문제

현재 TBB, MKL 및 IPP와 같은 Intel의 병렬화 라이브러리와 관련된 API를 배우고 있습니다. 그래도 AMD의 퍼즐 부분을 볼 가치가 있는지 궁금합니다. 아니면 시간 낭비일까요? (고백해야합니다. AMD의 도서관 지원에 대한 단서가 전혀 없습니다.

명확히하기 위해, 내가 인텔 길을가는 이유는 1) API가 매우 좋기 때문입니다. 그리고 2) 인텔은 API 지원만큼 진지하게 도구 지원을 받고있는 것으로 보인다. (다시 한번, 나는 가지고있다 실마리 없음 이 부서에서 AMD가 어떻게하고 있는지.)

도움이 되었습니까?

해결책

MKL 및 IPP 라이브러리는 AMD 머신에서도 (거의) 수행됩니다. 내 생각에 TBB는 AMD 상자에서도 잘 실행될 것입니다. 두 사람 모두에게 유익하고 유용한 기술을 제안해야한다면 OpenMP 라이브러리를 마스터하는 것입니다. OpenMP 확장 기능이있는 인텔 컴파일러는 놀랍도록 빠르며 AMD 칩과도 작동합니다.

다른 팁

비디오 게임, 운영 체제, 데이터베이스 서버 또는 가상화 소프트웨어와 같은 구축에 관심이있는 경우에만 가치가 있습니다. 다시 말해서, 당신이 어셈블러에서 시간을 할애 할 수있는 성능에 충분히 관심이있는 세그먼트가 있다면. 인텔에게도 마찬가지입니다.

회사에서 소프트웨어로 인텔 서버 패키지를 판매하는 경우 AMD 접근 방식을 배우지 않아야합니다. 그러나 여러 플랫폼 모두 (또는 많은) 플랫폼에 소프트웨어를 제공해야한다면 다른 기술을 조사 할 가치가 있습니다. 하드웨어 전용 라이브러리 용 랩퍼를 만드는 것은 매우 어려울 것입니다. (특히 스레딩이 관련되어 있기 때문에)

그리고 각 하드웨어 구성에 대해 완전히 별도의 구현을 작성하고 싶지는 않습니다. 실제로, 일반 사용자가 소프트웨어를 소비하려면 인텔 기술을 포기하고 표준 스레딩 기술을 사용하고 싶을 수도 있습니다. 나는 낙담하지는 않지만 인텔 스레딩 라이브러리는 모든 의도와 목적을 위해 그들의 시간보다 조금 앞서 있다고 생각합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top