/
redgpu
/
ispc
Обзор
Документация
Войти
/
redgpu
/
ispc
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
test
tests/print_bool_simd.ispc
84 строки
3 KB
Arina Neshlyaeva
Skip double tests for "dg2" device
08 янв 2022, 04:15
08 янв 2022, 04:15
dea8dfb
Код
Авторство
О чём код?
#include "../test_static.isph" // rule: skip on cpu=tgllp // rule: skip on cpu=dg2 // Test is unstable on tgllp task void print_fuf(uniform float aFOO[], uniform float b) { float a = aFOO[programIndex]; uniform bool uniBoolVal = (bool)b; bool varBoolVal = (bool)a; if (programIndex % 3 == 0) varBoolVal = false; print("Test bool: uniform: %, %;", uniBoolVal, !uniBoolVal); print(" varying: %, %;", varBoolVal, !varBoolVal); if (a > b/2) print(" in simd cf: %, %.\n", varBoolVal, !varBoolVal); } task void print_result() { assert(programCount <= 64); print("Test bool: uniform: true, false; varying: [false,true,true,false"); if (programCount > 4) print(",true,true,false,true"); if (programCount > 8) print(",true,false,true,true,false,true,true,false"); if (programCount > 16) print(",true,true,false,true,true,false,true,true" ",false,true,true,false,true,true,false,true"); if (programCount > 32) print(",true,false,true,true,false,true,true,false" ",true,true,false,true,true,false,true,true" ",false,true,true,false,true,true,false,true" ",true,false,true,true,false,true,true,false"); print("], [true,false,false,true"); if (programCount > 4) print(",false,false,true,false"); if (programCount > 8) print(",false,true,false,false,true,false,false,true"); if (programCount > 16) print(",false,false,true,false,false,true,false,false" ",true,false,false,true,false,false,true,false"); if (programCount > 32) print(",false,true,false,false,true,false,false,true" ",false,false,true,false,false,true,false,false" ",true,false,false,true,false,false,true,false" ",false,true,false,false,true,false,false,true"); #ifndef ISPC_GPU print("]; in simd cf: [_________,_________,true,false"); #else print("]; in simd cf: [((false)),((true)),true,false"); #endif if (programCount > 4) print(",true,true,false,true"); if (programCount > 8) print(",true,false,true,true,false,true,true,false"); if (programCount > 16) print(",true,true,false,true,true,false,true,true" ",false,true,true,false,true,true,false,true"); if (programCount > 32) print(",true,false,true,true,false,true,true,false" ",true,true,false,true,true,false,true,true" ",false,true,true,false,true,true,false,true" ",true,false,true,true,false,true,true,false"); #ifndef ISPC_GPU print("], [_________,_________,false,true"); #else print("], [((true)),((false)),false,true"); #endif if (programCount > 4) print(",false,false,true,false"); if (programCount > 8) print(",false,true,false,false,true,false,false,true"); if (programCount > 16) print(",false,false,true,false,false,true,false,false" ",true,false,false,true,false,false,true,false"); if (programCount > 32) print(",false,true,false,false,true,false,false,true" ",false,false,true,false,false,true,false,false" ",true,false,false,true,false,false,true,false" ",false,true,false,false,true,false,false,true"); print("].\n"); }