Read HCC_OPT_FLUSH and optimize dispatch accordingly.

If HCC is in this mode, we can use less aggressive flushes in some
cases.
Este commit está contenido en:
Ben Sander
2017-01-25 21:50:52 -06:00
padre 33a3ebad27
commit 2f7a8ec39c
Se han modificado 3 ficheros con 18 adiciones y 4 borrados
+5
Ver fichero
@@ -97,6 +97,8 @@ int HIP_COHERENT_HOST_ALLOC = 0;
// USE_ HIP_SYNC_HOST_ALLOC
int HIP_SYNC_HOST_ALLOC = 1;
int HCC_OPT_FLUSH = 0;
@@ -1204,6 +1206,9 @@ void HipReadEnv()
READ_ENV_I(release, HIP_COHERENT_HOST_ALLOC, 0, "If set, all host memory will be allocated as fine-grained system memory. This allows threadfence_system to work but prevents host memory from being cached on GPU which may have performance impact.");
READ_ENV_I(release, HCC_OPT_FLUSH, 0, "Note this flag also impact HCC. When set, use agent-scope flush rather than system-scope flush when possible.");
// Some flags have both compile-time and runtime flags - generate a warning if user enables the runtime flag but the compile-time flag is disabled.
if (HIP_DB && !COMPILE_HIP_DB) {
fprintf (stderr, "warning: env var HIP_DB=0x%x but COMPILE_HIP_DB=0. (perhaps enable COMPILE_HIP_DB in src code before compiling?)\n", HIP_DB);