Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AMD multi-core programming

I want to start to write applications(C++) that will utilize the additional cores to execute portions of the code that have a need to perform lots of calculations and whose computations are independent of each other. I have the following processor : x64 Family 15 Model 104 Stepping 2 Authentic AMD ~1900 Mhz running on Windows Vista Home premium 32 bit and Opensuse 11.0 64 bit.

On the Intel platforms , I've used the following APIs Intel TBB, OpenMP. Do they work on AMD and does AMD have similar APIs.what has been your experience?

like image 857
iceman Avatar asked Oct 26 '09 09:10

iceman


People also ask

Is multicore better for programming?

The multicore programming approach can help when: You want to take advantage of multicore and FPGA processing to increase the performance of an embedded system. You want to achieve scalability so your deployed system can take advantage of increasing numbers of cores and FPGA processing power over time.

Does programming require multi core?

An i5 is completely fine, programming really doesn't need a powerful computer - unless you're working on an application dependent on a computer's processing speed, such as games etc. Web design and other lightweight programming can be done perfectly fine on any dual-core CPU with at least a 3GHz clock speed.

Does AMD have multi threading?

Similar to Intel's Hyper-Threading, AMD implemented 2-way simultaneous multithreading. The AMD EPYC 7642 has 48 cores, and with simultaneous multithreading enabled it can simultaneously execute 96 hardware threads.

Does OpenMP work with AMD?

The AMD work for allowing an OpenMP offloading toolchain for the AMDGPU back-end has been merged this week. Ultimately this is for allowing OpenMP code to be offloaded to Radeon GPUs for compute, AMD has been maintaining AOMP as their downstream of LLVM Clang for supporting OpenMP offloading to Radeon hardware.


1 Answers

OpenMP and TBB are both available also for AMD - it is also a compiler question. E.g. see linux TBB on AMD.
I think the latest development on this end is to use the graphic card via CUDA or similar APIs- but this depends on the nature of your calculations. If it fits, it is faster than the CPU anyway.

like image 152
weismat Avatar answered Sep 27 '22 17:09

weismat