Hello. I've been using MATLAB on Intel systems (Core 2 Duo, Core 2 Quad, Core i5 mobile 1st gen, Core i7 mobile 1st gen, Core i7 3rd gen, and Xeon) since the year 2008 until now (2020).
The laptop with Core i7 mobile 1st gen that I've been owning since 2008 is already becoming obsolete. Since the performance of the AMD CPUs and APUs (the Ryzen series) has becoming good lately, I have decided to go for AMD laptop for my new laptop this time. After discussing with a few wonderful people on a few computer fora (if you are not a native speaker, the word 'fora' is the plural version of the word 'forum') regarding which AMD laptop to buy, I have decided to try the Lenovo Legion 5 15" with Ryzen 7 4800H APU.
However, one of the members in one of the fora told me that MATLAB might perform slower on an AMD systems compared to an Intel system even though the AMD system is faster than the Intel system in most types of workload. That forum member told me that this thing is caused by the MKL setting.
This is the 1st time I know about the MKL thing. I am from engineering background, not computer science. There are many MATLAB users who are not from computer science background (including me), but I think the level of MATLAB knowledge for most of the non-computer science background users are not as high as the computer science background users. Therefore, I think not many non-computer science background users know about this MKL setting for MATLAB on an AMD system (expecially the beginners/non-experienced users).
I did some searching on Google about MKL. Based on my understanding as a beginner so far who are not from the computer science background, most of the websites that I found say that during the MATLAB installation process, the MATLAB installers for version R2019b and earlier set the MKL as 'Intel MKL' (the most optimsed MKL for Intel CPU) whenever the installers detect an Intel CPU and set the MKL as 'SSE' (not optimsed MKL for AMD CPU) whenever the installers detect an AMD CPU (even though there are other types of MKL that are more optimsed for AMD CPU such as the 'IA SSE4', 'AVX', and 'AVX2'). I also obtained 2 more findings: (1) The MATLAB installer for the version R2020a has been fixed to set the MKL as 'Intel MKL whenever the installer detects an Intel CPU but set the MKL as 'AVX2' whenever the installer detects an AMD CPU. For AMD users who uses the MATLAB version R2019b and earlier on an AMD system, there is a tweak to change the MKL setting from the slower 'SSE' to the more AMD-optimised 'AVX2'. However, I am still using the old MATLAB version R2013b and am not sure whether it is also possible to do the same tweaking for the old version like the R2013b.
The reason why I still use the R2013b version is because I have been keeping too many old MATLAB scripts since since I did masters in the year 2008. Every few years, some of the syntaxes in MATLAB are revised/updated for improvement. My old MATLAB scripts will no longer be compatible with the newer MATLAB version because of the syntaxes update. This problem can still be solved by updating the old syntaxes in my old MATLAB scripts to the new syntaxes so that the old scripts can be run error-free on the newer MATLAB version, but I am currently doing a PhD and have a little time to do that at the moment and decided to stick using the MATLAB version R2013b and only revised my existing codes with newer syntaxes after I graduate my PhD.
The reason why I make this post is to ask if anyone here knows whether the MKL for the old MATLAB version R2013b is also tweakable to 'AVX2' on an AMD system or not. If yes, I will proceed buying the Lenovo Legion 5 15" laptop that comes with the AMD Ryzen 7 4800H APU. Otherwise, I will just switch to the Lenovo Legion 5 15" laptop that comes with the Intel Core i7-10750H CPU. Thank you.
1) Please let me know if I should reply on an existing thread(s) to ask this question instead of opening this new thread to ask the same question.
2) The Lenovo Legion 5 15" laptop is available in both the AMD Ryzen APU and Intel Core iSeries CPU. All this time I have decided to go for the Ryzen 7 4800H version because it is cheaper but perform better than some of the more expensive Intel CPUs in some aspects, but I can change my mind spending a little bit extra buying the Core i7-10750H version if it is not confirmed whether the MATLAB version R2013b is tweakable to use the 'AVX2' or not.
3) Last but not least, I am also not a native English speaker. I only know the word 'fora' since the year 2013. Before that, I mistakenly used the word 'forums' as the plural version of the word 'forum' :-p