Может ли OpenCL на APU использовать всю память? - PullRequest
0 голосов
/ 02 мая 2018

Можно ли собрать машину с чем-то вроде 32 ГБ ОЗУ и использовать около 28 ГБ с OpenCL?

Мой текущий APU - Athlon 5350 с «глобальным объемом памяти», о котором сообщалось, 2142658560. Я немного поиграл с pyopencl с CL_MEM_USE_HOST_PTR, но я не нашел способа сделать это.

Возможно ли это вообще? Может быть, с каким-нибудь ВСУ нового поколения, например с Райзен Вега?

ПРИМЕЧАНИЕ: я непрофессионал и новичок, я не потратил целый час, пока изучал OpenCL, потому что прежде чем вкладывать деньги и время в это, я хочу знать, возможно ли это вообще ... очень жаль, если это это глупый вопрос.

1 Ответ

0 голосов
/ 02 мая 2018

Да, возможно иметь компьютер на 32 ГБ и выделить ~ 28 ГБ своего ОЗУ для любой программы. Когда вы пишете программу OpenCL, все управление областями памяти (внутри и вне микросхемы) должно выполняться вручную. Я не думаю, что вы можете запустить ядро ​​OpenCL, которое, похоже, имеет прямой доступ к ОЗУ, но даже если бы вы могли, об этом не стоит особенно думать, потому что мощь OpenCL заключается в детальном управлении ОЗУ, L2 и L1 - не позволяя программистам считать, что их программа работает только с оперативной памятью.

Потратьте некоторое время, погрузитесь в управление памятью и получите четкое представление о нескольких пространствах памяти вашего компьютера различных размеров, скоростей соединения и пропускной способности соединения.

Похоже, вы думаете о покупке огромного количества оперативной памяти для решения вашей проблемы. Надеемся, что вы сможете найти лучший способ для разработки своего решения, которое не требует покупки 128 ГБ ОЗУ.

Тем не менее, некоторые программы трудно распараллелить. Для этих программ вы можете просто захотеть купить тонну оперативной памяти (и, возможно, даже полностью пропустить OpenCL и запустить его на процессоре)

...