is there a way to make makensis.exe use both cores? is this planned for the future?
thanks
enable dual core?
17 posts
What make you think it does not yet already?
BTW
What whould be the exact use of controlling this behaviour ?
BTW
What whould be the exact use of controlling this behaviour ?
Compression should be multi-threaded to use both cores, that's not a simple thing.
Originally posted by onadwell, it's not dual core because the task manager shows it's only using one. And using dual cores would speed up compressing.
What make you think it does not yet already?
BTW
What whould be the exact use of controlling this behaviour ?
Originally posted by Joost Verburgok, it's not simple, but it may help that 7-zip already does multi-threaded lzma compression.
Compression should be multi-threaded to use both cores, that's not a simple thing.
Hmmm, we have just gone from dual core to threads 🧟. Yeah, it shouldn't be too hard to add support to NSIS to compress using two threads (if hyperthreading or dual processors is available).
If testing your script is the speed problem of makensis use something along the lines off:
...
!define IWANTTODEBUG
...
!ifdef IWANTTODEBUG
SetCompressor off
!else
SetCompress lzma
!endif
...
this will speed up your script development a lot...
...
!define IWANTTODEBUG
...
!ifdef IWANTTODEBUG
SetCompressor off
!else
SetCompress lzma
!endif
...
this will speed up your script development a lot...
Also if you want to put this around your file commands:
!ifndef IWANTTODEBUG
;Put all your files here:
!endif
!ifndef IWANTTODEBUG
;Put all your files here:
!endif
It won't have to be re-written to be multi-threaded anyway, as AMD's Reverse Hyper-Threading which will be released through Windows Update will allow one thread to use both processors in a dual-processor CPU. That is what I've read anyway 😉
-Stu
-Stu
hi,
last post here was from last year and there were a lot of changes since then. i recognize with amd fx cpu and vista 32-bit that the compiler still not use both cores. according to taskmanager it stops at 50% which is one of two cores.
is there a planning for bring support for multiple cores, maybe in next release of nsis?
think about how fast the compiler could be on a quad core machine.. 😁
last post here was from last year and there were a lot of changes since then. i recognize with amd fx cpu and vista 32-bit that the compiler still not use both cores. according to taskmanager it stops at 50% which is one of two cores.
is there a planning for bring support for multiple cores, maybe in next release of nsis?
think about how fast the compiler could be on a quad core machine.. 😁
That thing about AMD was a load of cobblers.
The TODO list on the CVS repository is over 11 months old so I'm not sure what's next for NSIS.
Stu
The TODO list on the CVS repository is over 11 months old so I'm not sure what's next for NSIS.
Stu
The next version of the LZMA SDK supports multithreading. Once it leaves beta, I'll include and that should add free multithreading for LZMA compression.
Making the entire compiler multithreaded would require much more work. It's planned, but there are a lot of plans.
Making the entire compiler multithreaded would require much more work. It's planned, but there are a lot of plans.
Cool!
Stu
Stu
Originally posted by kichikThanks!
The next version of the LZMA SDK supports multithreading. Once it leaves beta, I'll include and that should add free multithreading for LZMA compression.
Making the entire compiler multithreaded would require much more work. It's planned, but there are a lot of plans.
Originally posted by kichikDid anything happen with this?
The next version of the LZMA SDK supports multithreading. Once it leaves beta, I'll include and that should add free multithreading for LZMA compression.
Cheers!
I tried integrating the new version but it wasn't a simple drop-in replacement, so after a few hours I left it and never got to it since.
Originally posted by kichikThat's unfortunate. With all of the multi-core boxes out there, I think this would be a great feature. I regularly compile installers with 100+ MB of source files, and it's sad to have three of my four cores idle when doing so.
I tried integrating the new version but it wasn't a simple drop-in replacement, so after a few hours I left it and never got to it since.
Cheers!
Luke
Try using CopyFiles, SetCompress off, or building "skeleton" installers that include all the logic but don't actually install any data. I tend to go with the skeleton installers, to reduce disk I/O and make the actual installation process go faster as well as the compilation.
-Dan
-Dan