Posted March 14, 201410 yr As part of my final year project (if approved). I will be focusing a lot on threading. Currently Win Tookit uses background workers with apparently are bad for performance. I've been experimenting and here are some results compare the current method used by Win Toolkit and a new method. Parallel will also use more CPU cores and I will let you choose in Options how many you want to use. By default it would be ProcressorCount - 1, so if you have a quad core with hyperthreading (8), it will use 7 by default. Test 1: The test was to get the MD5 values for 1300+ MSU files.--------------------------------------------Not Updating GUI:-Current: 19270ms (19 seconds)New: 5499ms (5.4 seconds)350% speed increase! When updating the GUI:-Current: 38417ms (38.4 seconds)New: 9576ms (9.5 seconds)401% speed increase! --------------------------------------------Test 2: The test was to get the MD5 values for 55652 files. Not Updating GUI:-Current: 466165ms (466 seconds / 7.7 minutes)New: 4943ms (4.9 seconds / 0.082 minutes) 9430% speed increase! When updating the GUI:- Current: 500754ms (501 seconds / 8.34 minutes) (testing....)New: 13334ms (13.3 seconds / 0.22 minutes) 3755% speed increase! -----------------------------------------------------------The results so far look very promising! Imagine integrating EVERY gadget, EVERY wallpaper, EVERY custom files, EVERYTHING except Updates + Drivers being integrated at the same time as everything else. I'm still continuing my research...
March 15, 201410 yr Author I want to implement it for the next release but it requires changing Win Toolkit from .NET 3.5 to .NET 4.0
March 16, 201410 yr Author Since RunOnce decided to screw up (partially my fault). I decided to put all my knowledge including the new multithreading knowledge I have into it, So far it's a lot less code and much simpler for me to read and so far the results have been excellent. For example: I had to wait about 10-13 seconds for it detects items to install (usually 2000+ drivers) before I see the main install screen. Now it does the same thing in 411ms 366ms so no complaints here. It now uses all cores to get the information.
March 16, 201410 yr Good job! I think its the true way, its goes "modern".I agree with that WTK should use all possibles. changing Win Toolkit from .NET 3.5 to .NET 4.0 Excellent idea!
March 16, 201410 yr Author Well with the RunOnce installer I've managed to keep it on .NET 3.5 but yet use a backported dll which lets me use the parallel and linq from .NET 4.0. But for WinToolkit I will use the latest .NET framework the university have.
March 16, 201410 yr Author Can people please test the latest test build. The RunOnce installer has had an upgrade in regard to threading and updates are installed separately. Also when you select/load a DVD in WIM Manager a sample install.ini is created in the sources folder to be used with the RunOnce. Thanks. Yay, i think 3.5 will die in future, that's a reason for example.I wish it was dead already or wish that Windows 7 came with .NET 4 instead of 3.5
March 16, 201410 yr I wish it was dead already or wish that Windows 7 came with .NET 4 instead of 3.5 True one.
March 17, 201410 yr I will try it sometime tomorrow Can people please test the latest test build. The RunOnce installer has had an upgrade in regard to threading and updates are installed separately. Also when you select/load a DVD in WIM Manager a sample install.ini is created in the sources folder to be used with the RunOnce. Thanks.
March 17, 201410 yr Yay, i think 3.5 will die in future, that's a reason for example.I wish it was dead already or wish that Windows 7 came with .NET 4 instead of 3.5 But, for folks that want or need to run Win Toolkit using XP as a host, assuming that is still possible, I would suggest sticking with 4.0 and not using 4.5, since AFAIK 4.0 can be installed on XP and 4.5 cannot.Cheers and Regards
March 17, 201410 yr I'd say if you need to run wintoolkit on xp to manage wim images i think its time you plan on moving to newer systems. just my 2 cents.
March 17, 201410 yr True enough and no argument from me about that. After all, that's kind of what Win Toolkit is all about - helping folks make an install source for Win7 or 8.x in the easiest, most efficient way possible to help them move to the newer OS. But since being able to do that from XP was a feature of Win Toolkit, then I say no sense removing a feature until it is absolutely necessary. I think it would be sad to require you to already be on Win7 in order to make a Win7 install source. Let's not be like MS. But then that's just my 2 cents. Cheers and Regards
March 17, 201410 yr Author .NET 4.0 is fine, has everything I need such as better threading, LINQ and Lambda expressions which I love.Just those 3 features alone will make a HUGE performance increase in Win Toolkit!
March 17, 201410 yr Wow! All of this talk on multi-threading, it makes my spidey senses tingle. I wonder what WinToolKit could do with an 8 core processor? hmmmm ... the possibilities are endless .... :prop:
March 17, 201410 yr Author Well previously Win Toolkit only used about 10-20% of my CPU my (8 cores) but with my experiments, it shoots up to about 80-90%. The HDD is really the limiting factor, SSD helps a lot but the results from a RAM Drive were mind blowing
March 17, 201410 yr Author Wonder, how it would perform on Dual E5-2620 with 24 threads total... What's your spec? :-O
March 17, 201410 yr Wonder, how it would perform on Dual E5-2620 with 24 threads total... What's your spec? :-O I dont own that system...basically its a server which was used for running databases but became obsolete when everything went to the "cloud" ... I would have to sell my both kidneys to build such a beast for my home desktop use, so I have a regular I7-3770K clocked to 5Ghz at home with 8 threads only Edited March 17, 201410 yr by Etz
March 17, 201410 yr I would suggest sticking with 4.0 and not using 4.5, since AFAIK 4.0 can be installed on XP and 4.5 cannot. Yeah, i think the same, its too early for 4.5But, I think also that XP is dead and the users should think about an upgrade.. Question: Whats about Mono, run it with?https://en.wikipedia.org/wiki/Mono_%28software%29 Edited March 17, 201410 yr by BrokenZer0
March 17, 201410 yr Yeah, i think the same, its too early for 4.5But, I think also that XP is dead and the users should think about an upgrade.. Question: Whats about Mono, run it with?https://en.wikipedia.org/wiki/Mono_%28software%29 Mono doesn`t help you, as Dism cannot be run on Linux or Mac OS X anyway And I dont think Latest ADK for Windows 8.1 would install on XP to get Dism working on it either... XP is pretty much obsolete platform anyway as it support ends completely in two weeks and Hardware which runs XP can run Win 7 from hardware standpoint. Edited March 17, 201410 yr by Etz
March 17, 201410 yr And I dont think Latest ADK for Windows 8.1 would install on XP to get Dism working on it either...AFAIK, You don't need to install the entire ADK in order to install DISM, at least it used to be that way, and there are tools available to download just DISM so you don't even have to download the entire ADK either. I admit that I don't know if the 8.1 DISM will install on XP, but as long as Win Toolkit on XP can be used to build a Win7 install source, then I think it is still worthwhile.I'm really not trying to be an XP champion, I haven't run it myself in years, and I don't know for sure if the latest version of Win Toolkit even runs on XP for that matter. ( I'm also not sure if Win Toolkit runs on or can build an install source for Vista, but since it is part of the NT6 family I think it probably could be made so it does. Yes I know it's market share is low so that's not as important, but still.) But XP still has a large enough market share to not be ignored. So if we want to give those folks a way to use their existing install as a platform on which to build a Win7 or possibly even a Win8.x install source, and leaving code in to allow running on XP does not hurt the performance on other platforms, then why not? I'm trying to be a Win Toolkit champion! I would really like to see the usage of Win Toolkit continue to grow. It really irks me to see new users asking questions about how to use RT7Lite, when that app hasn't been updated in several years, but it is a recognized name and it is still used. I want Win Toolkit to be the go to tool for Win 7 and Win 8.x like nLite became for XP. And speaking of nLite, nuhi is expected to release his version of a tool to work on Win7 and Win8.x by sometime next month, and if nLite was any indication, then that might well become the major "competition" to Win Toolkit. WinAIO Maker Professional by Josh Cell, and Onepiece's DX WinNT6.x True Integrator for Windows Vista x86/x64, Windows 7 x86/x64 and Windows 8/8.1 x86/x64 are two existing "competitors", among others. I just figure the more versions of Windows that Win Toolkit can run on and the more versions it can make an install source for can only help it have a larger user base. And wouldn't that benefit us all? Cheers and Regards
March 17, 201410 yr Author 8.1 DISM doesn't work on XP. WinToolkit does run on XP with some small features disabled. I will be using .NET 4.0 so XP users can still use it.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.