What's your average time to build an ISO?

pmikep

Active Member
Or maybe better, what can I do to speed up NTLite processing? Or "What's the bottleneck?"

It takes my computer about 25 minutes to trim a Win7. And that's starting with a trimmed iso, with only one edition, with updates already applied.

I know that there are too many variables to get a good answer. To be consistent, we all would have to start with the Win7+SP1.iso and then use one of Clanger's barebone presets to maximally exercise NTLite.

But I noticed, while doing a bunch of builds lately, that my CPU rarely goes to 100%. (Old AMD Quad Core, running 3.5 GHz.) And my Hard Drive light rarely stays on continuously. (RAID 10, with a sequential write in the 300's - although random writes are typical for a hard drive.)

That is, it doesn't seem like the bottle neck is my CPU or my hard drive.

What else could it be?

If it is my hard drive, then I presume that a SSD would speed up NTLite by a factor of 10?

Not that I plan to make a life out of 'Liting. But curious.
 
System, AMD A10 7890K quad core apu at stock 4.1GHZ, Crucial Ballistix DDR3 2133mhz(single channel). WD Green 120ssd(330mbs read and 170mbs write, approx).

Test run 1, update w7 pro sp1 with kb3125574 and 3 prerequisites only. Source folder on ssd c drive. Load ntlite, browse to source folder, manually add updates, check clean update backup, check my settings, save changes and unmount, did not create iso, total time 29 minutes 22 seconds. Round it up, 30 minutes.

CPU usage during build. During actual integration, 25 to 75% of 4 cores with around 50% being used on average.. All cores running during process. Usage during save changes, up to 100%.

Test run 2, barebone the folder created in run 1. Load ntlite, select folder and load barebone v5 preset, check my settings, save changes and unmount. Total build time 29m 12S, round it up, 30 mins. CPU usage similar to run 1. Total build time 60 minutes.

The actual time to integrate 3125574 alone is 15 minutes. Using 200 plus updates instead of 3125574 would take 2 to 2 1/2 hours to integrate.
 

Attachments

  • Auto-saved session {11EF7BB2-8C2E-453D-96B4-95056D11A066}.xml
    41.4 KB
Last edited:
Gonna put this topic on mi Interesting stuff page because users can see and judge approximate build times.
 
Your times and your loads seem very similar to mine. Interesting that an SSD doesn't seem to change the build time much.

Maybe nuhi can develop an NTLite v2 that uses the GPU?
 
As far as i know ntlite uses al availible cores. NTLite has its own removal engine so it will use as many cores as possible. Dism etc is used for integration and mounting/unmounting and i have seen it use 1 core only at times. You may be able to get some gains by messing around with core affinities and priorities, use faster ssds and i did 2 runs, save changes and unmount, then load again. If you did it all in 1 run, then you may gain 5 minutes. Using the tweaks and faster drives may help but 1 thing i do know is things never scale as you think they might do. Using those tweaks, faster drive, faster cpu you may gain 1/4 to 1/3 in time. Its a nice gain but to be honest when im liting the pc is only running ntlite and nothing else so i sod off and do something else until its all done.
 
Last edited:
I don't really understand your config.

Here is mine:
http://www.dell.com/support/home/us/en/19/product-support/servicetag/g1lslw1/configuration
Don't expand storage as it shows drive letters.

To slim down the install.wim to around 700 MB (now is 0.99 GB because of drivers integrated out of the slimming process), takes 20 min. Is not bareboned but for some reason, i can't install Corel Paint Shop Pro and at the end of Firefox setup there is an error but seems like it is isolated, firefox installs fine, i kept sfc and WPF required for some installs.

How do i set NTLite settings and source:
C:\ drive is HDD and contains the source
D:\ drive is SSD and contains NTLite, the temp (mount) and scratch dir

Slimming down Win 7 SP1 only took 22 minutes.
Slimming down Win 10 1703 only took 26 minutes.

So, if you want to speed up (a bit), start by having three (SSD) drives:
1.- Source
2.- Temp
3.- Scratch

or

'Ramdrive' for Temp and Scratch to speed up a bit more.
 
Your comment about Priority got me thinking: Maybe we're seeing speed limitations due to Window's Normal scheduling?

I use Image for Windows to make images of my partitions. It has a "Priority" select feature, where you can set Priority in five steps.

So maybe a new feature for NTLite would be a Priorty selector, where we can chose Above Normal or High from within the program?
 
So maybe a new feature for NTLite would be a Priorty selector, where we can chose Above Normal or High from within the program?
Nlite (for XP) have this feature but only nuhi can tell if high priority is applied in NTLite when applying tasks.
 
22 minutes is 10 minutes faster than me. So probably your SSD making a difference.

Ramdrive is interesting for the NTLite Scratch. Too bad I just removed it from my build. (I've never used it.) Maybe NTLite could offer to use it and set aside some RAM for Scratch?
 
@Kasual, since you said that Corel Paint Shop Pro wasn't working on your NTLite'd build, I tried it on my new upgrade. PSP X6 opens okay for me.

Now, one thing I found (by accident) with PSP is that if you have a tablet hooked up when you open PSP, PSP will crash. You have to unplug the tablet from USB first. (It seems like PSP polls the drives before it gets to the edit screen.)
 
@Kasual, since you said that Corel Paint Shop Pro wasn't working on your NTLite'd build, I tried it on my new upgrade. PSP X6 opens okay for me.

Now, one thing I found (by accident) with PSP is that if you have a tablet hooked up when you open PSP, PSP will crash. You have to unplug the tablet from USB first. (It seems like PSP polls the drives before it gets to the edit screen.)

1.- PSP won't install, the setup open and close without loading the setup.

2.- Have you removed Portable Device Enumerator Service?
 
Ahh... It was already installed on my desktop upgrade. I'll try installing it on my 2nd clean NTLite'd Win7 tomorrow tomsee what happens.

AFAIK, I did not remove the Portable Device Enumerator Service. I presume that it was locked out by my current hardware list. (If you're suggesting that as the cause of the strange PSP behavior above, it hs been doing that on an un-NTLited'd Win7 for years.)
 
I presume that it was locked out by my current hardware list. (If you're suggesting that as the cause of the strange PSP behavior above, it hs been doing that on an un-NTLited'd Win7 for years.)

Portable Device Enumerator Service is not locked by any option in compatibility, is under Portable Devices (WPD/MTP).
 
Your comment about Priority got me thinking:

I dont usually change Priority settings because it can lead to instability issues and for most things i dont change Core Affinity either. I only change Core Affinity for audio rendering(as i have mentioned elsewhere).
 
Btw make sure no antivirus (including Windows Defender) is scanning in the background, it will slow it down a lot.

Bottleneck is a single-core CPU speed only. Due to integrations and removals being sequential operations.
One can't edit the same location, update files from multiple components/updates at the same time.
The result would be unpredictable.

That is why v1.6 beta has the Multiple-instance support, where you can run more than one NTLite if you want to parallel-process another image.
Component removal does remove files and registry in parallel, and reads files in parallel, just can't process entities in parallel due to that limitation.

In an ideal world, I could upgrade the removal engine to scan all components for tasks, then sort them and execute in parallel as much as possible.
But at the end it would still be the same outcome, only faster by 30-50% or so. And only a handful of us repeatably using the tool would benefit, everyone else would wonder: where are more removals, what were you doing for a month :)
 
In an ideal world, I could upgrade the removal engine to scan all components for tasks, then sort them and execute in parallel as much as possible.
But at the end it would still be the same outcome, only faster by 30-50% or so. And only a handful of us repeatably using the tool would benefit, everyone else would wonder: where are more removals, what were you doing for a month :)

@nuhi Respectfully, I think you're looking at this too short term. And perhaps focusing on the wrong users. You should be focusing on YOU and the long term benefit of this.

For example, let's say it takes you a month (okay, two) to optimize NTLite so that it's 50% faster. Forget about the time saved for the few of us who obsess with builds for a week. YOU (but also ultimately the rest of us) will benefit in the future because it will take you only half as long to test NTLite. The month or two you spend optimizing it now will speed up development later. You will quickly overcome any delay in removals once a 2x faster NTLite is working.

And since you will probably be deveoping NTLite for another 5 to 10 years, investing two months now is nothing compared to the years you'll save not having to watch the Progress Bars in NtLite.
 
P.S. I offer this advice as someone who has built a small (real) airplane. It took us 10 years to build it. (Whereas most ppl finish in 3.) Part of the delay was because I took extra time to make changes that would make maintenance tasks easier in the future.

We've been blessed to fly it for 23 years now and every time that I have to maintenance or an inspection, I am always glad that I took the extra time to make these tasks easier.
 
The head on a hard disk drive can only be in 1 place at a time and it takes time to find the next place it should be. I use 2 hdd's, 1 source, 1 target to help out. If you are running a mirror raid then 2 heads have to be in a certain place at a certain time. Striped would be a similar case. IF nuhi changes the engine as described then your hdd will be like a line dance on speed, all over the place and will probably scream F-You and die an early death.
 
1 thing i would ask nuhi about is NTLite and the Ryzen Core Complex Unit CCX hopping issue(on the 1st generation) which is known to reduce gaming and app performance. .Link The Raven Ridge 2200G and 2400G are single CCX and dont suffer from the issue.
 
Last edited:
On using two drives to speed up NTLite processing: I have one single Black Caviar (mainly for my OS) and RAID 10 for the other. If I split up the two NTLite folders, which one should go to the RAID? (As it stands now, I have both folders on the same partition on the RAID.)
 
Back
Top