Skip to content
Snippets Groups Projects
Commit e9b4d503 authored by Hashim Sharif's avatar Hashim Sharif
Browse files

Adding test case for PROMISe

parent e0a35e84
No related branches found
No related tags found
No related merge requests found
......@@ -447,6 +447,87 @@ void testSoftmaxOutput(void* output_ptr){
}
void testPromiseError(){
printf("***** TensorQuantize ***** \n\n");
void* input = create4DTensor(CUDNN_DATA_FLOAT, CUDNN_TENSOR_NCHW, 2, 6, 1, 1);
float* host_ptr = (float*) ((struct Tensor*) input)->host_data;
void* gold_tensor = create4DTensor(CUDNN_DATA_FLOAT, CUDNN_TENSOR_NCHW, 2, 6, 1, 1);
float* gold_ptr = (float*) ((struct Tensor*) gold_tensor)->host_data;
gold_ptr[0] = -1;
gold_ptr[1] = -2;
gold_ptr[2] = -3;
gold_ptr[3] = -4;
gold_ptr[4] = -5;
gold_ptr[5] = 0;
gold_ptr[6] = 5;
gold_ptr[7] = 4;
gold_ptr[8] = 3;
gold_ptr[9] = 2;
gold_ptr[10] = 1;
gold_ptr[11] = 1;
int num_elems = 12;
int num_runs = 1000;
float* result_ptr = (float*) malloc(sizeof(float) * num_elems);
for (int swing = 1; swing <= 7; swing++){
for (int j = 0; j < num_elems; j++){
result_ptr[j] = 0;
}
float error_sum = 0.0;
for (int i = 0; i < 1000; i++){
host_ptr[0] = -1;
host_ptr[1] = -2;
host_ptr[2] = -3;
host_ptr[3] = -4;
host_ptr[4] = -5;
host_ptr[5] = 0;
host_ptr[6] = 5;
host_ptr[7] = 4;
host_ptr[8] = 3;
host_ptr[9] = 2;
host_ptr[10] = 1;
host_ptr[11] = 1;
void* error_out = addPromiseError(input, swing);
//printTensorValues(error_out);
// Move result data back to the host
hpvm_request_tensor(input, 0);
float* error_out_ptr = (float*) ((struct Tensor*) input)->host_data;
for (int j = 0; j < num_elems; j++){
result_ptr[j] += error_out_ptr[j];
error_sum += (error_out_ptr[j] - gold_ptr[j]) * (error_out_ptr[j] - gold_ptr[j]);
}
}
printf ("\n\n - Swing %d results : \n", swing);
for (int j = 0; j < num_elems; j++){
result_ptr[j] = result_ptr[j] / num_runs;
printf(" %f ", result_ptr[j]);
}
printf("mean_error = %f \n", error_sum / num_runs);
printf(" \n");
}
}
void testQuantization(){
printf("***** TensorQuantize ***** \n\n");
......@@ -465,7 +546,7 @@ void testQuantization(){
host_ptr[9] = 7.2;
host_ptr[10] = 2.5;
host_ptr[11] = 3;
void* quantize_result1 = quantizeTensorPromise(input, -4, 6);
......@@ -525,16 +606,12 @@ void testQuantization(){
host_ptr[11] = 3;
void* quantize_result4 = quantizeTensorPromise(input, -10, 10);
void* quantize_result4 = quantizeTensorPromise(input, -10, 10);
printTensorValues(quantize_result4);
void* quantize_result5 = quantizeTensorPromise(input, -10, 10);
printTensorValues(quantize_result5);
//void* error_out = addPromiseError(quantize_result, 1);
//printTensorValues(error_out);
......@@ -1076,6 +1153,12 @@ int main(){
//- testSampling_1_1();
//testQuantization();
testPromiseError();
stopProfiling();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment