Hadoop также имеет C ++ API, называемый Hadoop Pipes. Pipes позволяет писать код Map и Reduce на C ++ и, таким образом, взаимодействовать с любыми доступными вам библиотеками C / C ++. Имеет смысл, что это может позволить вам взаимодействовать с CUDA.
Насколько я понимаю, это всего лишь переписывание MapReduce, поэтому все сетевое взаимодействие и распределенная файловая система по-прежнему будут обрабатываться Java. Hadoop предназначен для того, чтобы сделать распараллеливание задач простым и общим, и поэтому не может быть наиболее эффективной реализацией MapReduce. Ваши требования к эффективности по сравнению с доступным временем программиста, вероятно, будут решающим фактором при использовании Hadoop или более эффективной низкоуровневой среды.
Количество слов в трубах пример. К сожалению, в действительности отсутствует документация, но доступность исходного кода значительно облегчает задачу.