Вам следует использовать OpenCL, если у вас есть тяжелые вычисления, которые можно распараллелить, и вы хотите использовать для этого свою графическую карту (или ее части).
У нее немного странная модель вычислений (по крайней мере, если вы знаете просто "общее" программирование, а не то, как работает графический процессор или если у вас есть большой опыт в некоторых областях математики), и некоторые ограничения, что и как вы можете делать.
Так что я думаю, что это маловероятно, что вы ищете.
Актеры имеют очень мало общего с OpenCL, я думаю, что единственная их общая черта заключается в том, что они оба решают проблему параллельных вычислений, но с совершенно другой точки зрения. ИМО, модель акторов намного проще понять и, вероятно, также использовать ее (но это всего лишь предположение, поскольку у меня до сих пор не было никакого дела с OpenCL).
Если вы хотите реализовать систему на основе агентов, то акторы могут оказаться весьма полезными. Вы можете взглянуть на стандартные акторы scala или альтернативные реализации:
- Akka, также предлагающий множество дополнительных функций поверх актеров + приятные документы с некоторыми руководствами
- акторы в scalaz
person
Sandor Murakozi
schedule
30.07.2010