Пример #1
0
Файл: test.cpp Проект: 8l/kalmar
	bool GpuAccView1ToGpuAccView2()
	{
		accelerator_view cpu_av1 = cpu_acc.get_default_view();
		accelerator_view stg_arr_av1 = gpu_acc.get_default_view();

		accelerator_view cpu_av2 = cpu_acc.get_default_view();
		accelerator_view stg_arr_av2 = gpu_acc.create_view();

		return CopyAndVerifyFromStagingArrayToStagingArray<DATA_TYPE, RANK>(cpu_av1, stg_arr_av1, cpu_av2, stg_arr_av2);
	}
Пример #2
0
runall_result test10(accelerator& device)
{
	array<int, 1> arr1(64, device.get_default_view(), ACCESS_TYPE);
	array<int, 2> arr2(64, 64, device.get_default_view(), ACCESS_TYPE);
	array<int, 3> arr3(64, 64, 64, device.get_default_view(), ACCESS_TYPE);
	
	runall_result res;
	
	res &= REPORT_RESULT(VerifyCpuAccessType(arr1, ACCESS_TYPE));
	res &= REPORT_RESULT(VerifyCpuAccessType(arr2, ACCESS_TYPE));
	res &= REPORT_RESULT(VerifyCpuAccessType(arr3, ACCESS_TYPE));
	
	return res;
}
Пример #3
0
Файл: test.cpp Проект: 8l/kalmar
	runall_result Gpu1AccViewToGpu2AccView()
	{
		accelerator_view gpu_av1 = gpu_acc1.get_default_view();
		accelerator_view gpu_av2 = gpu_acc2.get_default_view();
		
		runall_result res;
		
		for(auto a_t_tuple : access_types_vec)
		{
			print_access_type_tuple(a_t_tuple);
			res &= CopyAndVerifyFromArrayToNonContiguousArrayView<DATA_TYPE, RANK>(gpu_av1, gpu_av2, std::get<0>(a_t_tuple), std::get<1>(a_t_tuple), std::get<0>(a_t_tuple));
		}

		return res;
	}
Пример #4
0
Файл: test.cpp Проект: 8l/kalmar
	runall_result CpuAccViewToGpuAccView()
	{
		accelerator_view cpu_av = cpu_acc.get_default_view();
		accelerator_view gpu_av = gpu_acc.get_default_view();
		
		runall_result res;
		
		for(auto a_t_tuple : access_types_vec)
		{
			print_access_type_tuple(a_t_tuple);
			res &= CopyAndVerifyFromNonContigArrayViewConstToArray<DATA_TYPE, RANK>(cpu_av, gpu_av, std::get<0>(a_t_tuple), std::get<1>(a_t_tuple));
		}
		
		return res;
	}
Пример #5
0
runall_result test9(accelerator& device)
{
	extent<2> arr_extent = CreateRandomExtent<2>(64);        
    array<float, 2> arr(arr_extent, device.get_default_view(), ACCESS_TYPE);
	
	return REPORT_RESULT(VerifyCpuAccessType(arr, ACCESS_TYPE));
}
Пример #6
0
Файл: test.cpp Проект: 8l/kalmar
	runall_result Gpu1AccViewToGpu2AccView()
	{
		accelerator_view cpu_av = cpu_acc.get_default_view();
		accelerator_view arr_av = gpu_acc1.get_default_view();
		accelerator_view stg_arr_av = gpu_acc2.get_default_view();
		
		runall_result res;
		
		for(auto a_t_tuple : access_types_vec)
		{
			print_access_type_tuple(a_t_tuple);
			res &= CopyAndVerifyFromStagingArrayToArray<DATA_TYPE, RANK>(cpu_av, arr_av, stg_arr_av, std::get<0>(a_t_tuple));
		}
		
		return res;
	}
Пример #7
0
runall_result test12(accelerator& device)
{
	extent<2> arr_extent = CreateRandomExtent<2>(64);  
	std::vector<int> cont(arr_extent.size(), 10);
	array<int, 2> arr(arr_extent, cont.begin(), cont.end(), device.get_default_view(), ACCESS_TYPE);
	
	return REPORT_RESULT(VerifyCpuAccessType(arr, ACCESS_TYPE));
}
Пример #8
0
runall_result test14(accelerator& device)
{
	std::vector<int> cont1(64, 10);
	array<int, 1> arr1(64, cont1.begin(), cont1.end(), device.get_default_view(), ACCESS_TYPE);
	
	std::vector<int> cont2(64 * 64, 10);
	array<int, 2> arr2(64, 64, cont2.begin(), cont2.end(), device.get_default_view(), ACCESS_TYPE);
	
	std::vector<int> cont3(64 * 64 * 64, 10);
	array<int, 3> arr3(64, 64, 64, cont3.begin(), cont3.end(), device.get_default_view(), ACCESS_TYPE);
	
	runall_result res;
	
	res &= REPORT_RESULT(VerifyCpuAccessType(arr1, ACCESS_TYPE));
	res &= REPORT_RESULT(VerifyCpuAccessType(arr2, ACCESS_TYPE));
	res &= REPORT_RESULT(VerifyCpuAccessType(arr3, ACCESS_TYPE));
	
	return res;
}
Пример #9
0
runall_result test8(accelerator& device)
{
	extent<2> arr_extent = CreateRandomExtent<2>(64);  
	
	array_view<int , 2> arr_v(arr_extent);
	array_view<const int, 2> arr_v_c(arr_v);	
	array<int, 2> arr(arr_v_c, device.get_default_view(), ACCESS_TYPE);
	
	return REPORT_RESULT(VerifyCpuAccessType(arr, ACCESS_TYPE));
}