В настоящее время я изучаю API, связанные с библиотеками распараллеливания Intel, такими как TBB, MKL и IPP. Однако мне было интересно, стоит ли также заглядывать в часть головоломки AMD. Или это будет пустой тратой времени? (Должен признаться, я вообще ничего не знаю о поддержке библиотеки AMD, поэтому был бы признателен за любой совет, который у вас может быть.)
Чтобы прояснить, я иду по пути Intel потому, что 1) API очень хороши; и 2) Intel, похоже, относится к поддержке инструментов так же серьезно, как и к поддержке API. (Еще раз, у меня есть без подсказки, как у AMD в этом отделе.)





Если ваша компания продает пакеты только серверов Intel с вашим программным обеспечением, вам не стоит беспокоиться об изучении подхода AMD. Но если вам придется предлагать программное обеспечение для обеих (или многих) разных платформ, возможно, стоит изучить различные технологии. Создать оболочки для аппаратно-зависимых библиотек будет очень сложно. (Тем более, что задействована многопоточность.)
И вы определенно не хотите писать полностью отдельную реализацию для каждой конфигурации оборудования. Фактически, если ваше программное обеспечение будет использоваться обычным пользователем, вы можете отказаться от технологии Intel и использовать стандартные методы потоковой передачи. Я не хочу обескураживать, но я считаю, что библиотеки потоков Intel немного опережают свое время во всех смыслах и целях.
Получение B.S. в C.S. для того, чтобы получить работу, программирование компьютеров является «намерением и целью». Получение степени доктора философии в C.S. делать то же самое - «интенсивная цель». ;-)
ха-ха, вот что я получаю за то, что печатаю быстрее, чем могу думать. Хорошо, поправил формулировку.
Это стоит того, только если вы особенно заинтересованы в создании чего-то вроде видеоигр, операционных систем, серверов баз данных или программного обеспечения для виртуализации. Другими словами: если у вас есть сегмент, в котором вы достаточно заботитесь о производительности, чтобы найти время, чтобы сделать это (и сделать это правильно) на ассемблере. То же самое и с Intel.
Верно, если производительность является огромным фактором, а оборудование специализированное.
Библиотеки MKL и IPP будут работать (почти) также на машинах AMD. Я предполагаю, что TBB также будет нормально работать на коробках AMD. Если бы мне пришлось предложить технологию, которая была бы полезна и полезна обоим, я бы освоил библиотеки OpenMP. Компилятор Intel с расширениями OpenMP потрясающе быстр и также работает с чипами AMD.
Опережают ли они свое время во всех отношениях или просто для интенсивных целей? В любом случае, что такое интенсивная цель?