Маленький обходной путь для NVIDIA ест 100% CPU при работе с OpenCL приложений.
mk.junkyard.one.pl/libsleep.c
Для компиляции перспективы:
GCC -O2 -fPIC -shared -Wl, -soname, libsleep.so -o libsleep.so libsleep.c
Использовать:
LD_PRELOAD ="./libsleep.so" ./cgminer
Вы можете настроить время сна, установив
переменная окружения YIELD_SLEEP_TIME (в микросекундах)
По умолчанию 1000usec
Пример:
YIELD_SLEEP_TIME ="1500" LD_PRELOAD ="./libsleep.so" ./cgminer
Как это работает:
Он отменяет sched_yield функции с именем во время запуска программы OpenCL с вызовом USleep.
Ожидать немного падение производительности (менее 5%) - отрегулировать YIELD_SLEEP_TIME для ваших нужд.
Чем дольше OpenCL время работы программы (то есть. Выше Agression), тем ниже падение производительности.
Есть ли кто-то, кто зависит от подобной проблемы с картами ATI было бы готово дать мне доступ к своей системе, поэтому я мог смотреть, как решить эту проблему с ATI?