View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000923||OpenMPT||[All Projects] Feature Request||public||2017-03-04 14:29||2017-10-08 09:39|
|Platform||Linux||OS||Linux Mint (kernel 4.10)||OS Version||18.1|
|Target Version||OpenMPT 2.0 (very long term goals)||Fixed in Version|
|Summary||0000923: Performance problems with VST plugins and multi-core support in OpenMPT|
We know that a lot of VST plugins are very CPU hungry. It became a problem on modern machines with multiple cores. For example: I can normally play my song with 4-6 VSTs on 13-year-old CPU (only 1 core) and it will work fine without issues but OpenMPT stucks on my modern laptop (with 4 cores!!!).
I described this problem here: https://appdb.winehq.org/objectManager.php?sClass=version&iId=34633)
Despite the fact that the tests show: 1 intel core is almost equal to 1 amd core, these cores on my laptop are very slow by some reason in OpenMPT (probably bad hardware) and I can use only 25% (!) of my processor. Imagine, if I had 8 core processor but the cores are slow.
Allow users to use multiple cores and bind each VST plugin to specific core. (see attachment)
I don't have such problems in Renoise. Almost all modern DAWs have this feature.
P.S. I use wine but I have the same thing in Windows on my machine... anyway...
|Tags||No tags attached.|
|Has the bug occurred in previous versions?||Yes|
|Tested code revision (in case you know it)|
mptmulticore.png (94,646 bytes)
mptmulticore.png (94,646 bytes)
Slowness of pattern display in Wine is at least partly due to the work-around I added in r4043 . Otherwise the current row highlight would be jumpy and flickery like crazy. Now, the flickering could be attributed to an incompatibility in Wine because native Windows behaves differently, however, the way OpenMPT does its drawing of the pattern display here is way suboptimal and IMHO also massively contributes to the problem. Correct behaviour for the way OpenMPT does its drawing is also not at all specified by Microsoft. The work-around that gets applied on Wine basically redraws the whole thing on every row change, which can be noticeably slow, especially on very slow CPUs like an Intel Atom ZxxxxF.
Oh, I'd wish this was there! +1
Since I have Intel(R) Core(TM) i3-6006U, the most of VSTs work perfectly for me. Anyway, this feature would be very cool for slow-core CPUs (like 4 core Z*** intel processors) or for heavy VSTs that would make audio lag even on i3.
Yes, I will be upgrading to a multicore computer soon. Will I have to keep my old single-core, XP computer so I can run openMPT as efficiently as I have? Does this mean my new computer will offer me no speed advantage for openMPT?
It most likely will because there are tons of other ways OpenMPT can profit from a more modern CPU (e.g. updated instruction sets that OpenMPT can make use of).
Well, If I use 11 VSTs in the same time, the sound is starting to crack even on i3. We need this feature.
Re-iterating the known facts doesn't make implementation any easier.
I have already stated this otherwhere (possibly on IRC, cant remember right now):
@Manx: it was indeed on IRC, towards me. :)
quoting IRC EsperNET #modplug 2017-09-18 for future reference (I shortened the log to the relevant parts):
|2017-03-04 14:29||Monsterovich||New Issue|
|2017-03-04 14:29||Monsterovich||File Added: mptmulticore.png|
|2017-03-04 14:30||Monsterovich||Description Updated||View Revisions|
|2017-03-04 14:37||Monsterovich||Description Updated||View Revisions|
|2017-03-04 14:37||Monsterovich||Steps to Reproduce Updated||View Revisions|
|2017-03-04 14:47||Monsterovich||Reproducibility||have not tried => always|
|2017-03-04 14:51||Monsterovich||Description Updated||View Revisions|
|2017-03-04 15:03||manx||Note Added: 0002901|
|2017-09-18 19:16||manx||Product Version||OpenMPT 1.27.00.* (old testing) => OpenMPT 2.0 (very long term goals)|
|2017-09-18 19:17||manx||Product Version||OpenMPT 2.0 (very long term goals) =>|
|2017-09-18 19:17||manx||Target Version||=> OpenMPT 2.0 (very long term goals)|
|2017-09-18 19:18||LPChip||Note Added: 0003220|
|2017-09-18 20:15||Saga Musix||Priority||high => normal|
|2017-09-19 08:53||Monsterovich||Note Added: 0003221|
|2017-09-20 22:25||harbinger||Note Added: 0003222|
|2017-09-20 23:41||Saga Musix||Note Added: 0003223|
|2017-10-06 08:37||Monsterovich||Note Added: 0003293|
|2017-10-06 10:09||Saga Musix||Note Added: 0003294|
|2017-10-06 10:15||manx||Note Added: 0003295|
|2017-10-06 10:44||LPChip||Note Added: 0003296|
|2017-10-08 09:39||manx||Note Added: 0003298|