Defenestration Posted August 7, 2006 Posted August 7, 2006 I reported this problem before but never really got to the bottom of it. During the second half of a 12x burn the Device buffer often empties when the IB window does not have the focus. When the IB window does have focus, the Device buffer stays pretty constant at near full. I don't get any such problems with Nero so am thinking it might be related to I/O Transfer Length since the hard drive seems to be more active when burning with IB as opposed to Nero, and have a few questions so I can perform some additional tests: 1) When set to Automatic, what length does IB use (64KB ?) ? 2) Does anyone know what length Nero uses (or how I can find out) ? 3) I know you changed it to 256KB before in a previous build, but that caused problems with the windows caching mechanism. Were/Are there any such problems when set to 128KB ?
Defenestration Posted August 7, 2006 Author Posted August 7, 2006 Changing I/O Transfer Length to Manual and setting to 32KB did not help.
Defenestration Posted August 7, 2006 Author Posted August 7, 2006 I would be happy to try out various transfer lengths although would need a new build which allows various lengths to be specified (eg. 4KB, 8KB, 16KB, 32KB, 64KB, 128KB, 256KB, 512KB, 1024KB, 2048KB)
Defenestration Posted August 7, 2006 Author Posted August 7, 2006 A bit more info.... I was wrong when I said it only occurs if the IB window doesn't have the focus - It also occurs when the IB window does have the focus, although it's no where near as bad. I checked the Graphs in DVDInfoPro and found that... With 32K length, it cannot get above 8x, and evetually drops the speed down to 4x. With 64K (I presume - ie. Auto), it gets to 12x but struggles a bit I'm guessing that a Transfer Length higher than 64KB would help improve the situation on my system. Below are the graphs (32K first, 64K second):
LIGHTNING UK! Posted August 7, 2006 Posted August 7, 2006 For CD/DVD transfers, I very much doubt you can go over 64k. I don't think I've ever seen a driver that supports it. They error out if you try. I've also never seen a program attempt more than that. Nero included. For HDD reads, bigger transfers just means windows caches it before sending it back. The physical read from the hdd is still 64kb at a time. You can see how badly the overhead of small packets (32k) effects firewire / usb interfaces. They're just not very good for burning at speed with optical drives. Different chipsets also perform better/worse than other ones. If there was anything to do in this department, I'd have already done it.
Defenestration Posted August 7, 2006 Author Posted August 7, 2006 (edited) Could the interface possibly be the problem then ? I have been using SPTI, but Nero uses something else (its own interface ?). Other than that I'm not sure what else is different between IB and Nero. Something is definitely affecting performance with IB when moving data from the Buffer to the Device Buffer. Edited August 7, 2006 by Defenestration
Defenestration Posted August 14, 2006 Author Posted August 14, 2006 Well, I've done a few tests and both IB and Nero take roughly the same amount of time for burns at 8x and also at 12x, so it would appear that Nero is in fact burning at 12x when it says it is. This also proves my system can handle burning at 12x. However, as already mentioned the Device buffer in Nero does not fluctuate wildly whereas it does (including emptying on occasions) in IB. I had another idea that some of the reader/writer threads in Nero may be boosted to priority 14 or 15 although this is only a guess. Don't take this the wrong way but it would appear that the method used by Nero to keep the Device buffer filled during a burn is currently better than the method used by IB.
LIGHTNING UK! Posted August 14, 2006 Posted August 14, 2006 Filling the device buffer is just sending the 'write' command to the drive. I'm not actually filling a buffer - so to speak. I *could* boost the priority of the write thread but that could starve others of cpu timeslices. If it's a real problem for you, stick to using Nero. If it was a widespread problem, you probably wouldn't be the only one reporting the issue and maybe I'd have even experience it myself. It's bloody hard to do anything about weird happenings when they're only occurring on 1 pc.
polopony Posted August 14, 2006 Posted August 14, 2006 I've never had a bad burn while using IMGburn and before that the other program and haven't made a coaster in over three years and I don't know how many burns . The coasters I did make were my fault .I use good drives and quality media read Verbatim and Taiyo Yuden .Comparing IMGburn to Nero I don't see why ,IMG is a relativly new program ,is excellent ,ever evolving ,getting better and better ,and free to boot,and has support that no other program comes close to .This program is LUKs baby/toy to do with as he will and he's more that agreeable by adding features that members would like within reason .I personally think all the comparison is unfare and if in your opinion Nero is the superior burning program then by all means you should use that its great to have choices
volvofl10 Posted August 14, 2006 Posted August 14, 2006 your system CANNOT handle writing at 12x . proof is in your graphs above 1st graph shows average write rate at 4.86x and maxed at 9.51x , even though you selected 12x ( this is about normal for a laptop and firewire writer, although you should be able to hit a constant 8x write) 2nd graph shows average write rate 8.37x and maxed at 21.51x !!!! if it could write constantly at 12x then the average would show something like 11x and upwards. in the first graph using 32k , you can see your drive was starting to struggle trying to write at a constant 8x ( between the 1gb and 1,5gb mark) , the write speed dropped, the buffers dropped and the write rpm died as well . in the second one it says it maxed at 21.51x, which would be off the top of the graph. the write buffer line tried to stay constant, but kept dropping and recovering, but at the end it was all over the show , maybe the 32/64k difference, but more like the system could not sustain a constant 12x write was these 2 different images you burnt , as they look like they are different to me . again , as said previously IMO , your expecting desktop performance out of a laptop with a firewire optical drive , and this just ain't goin to happen ! just accept it i even tried a USB2 ext hdd to feed a 1394 12x writer , and thats about the fastest I/O combo you will get with a laptop, and it still wouldn't hold a speed of 12x.
Defenestration Posted August 15, 2006 Author Posted August 15, 2006 LUK - I understand the problems of trying to fix something that you cannot reproduce. You mentioned that you could boost the priority of the Write thread but thought this might affect the other threads. I would be happy to test a special build which has this change to see if this solves the problem, since I would very much like to solve this issue, if poss ? polopony - I did not say that IB produced coasters and did not say Nero is better as a whole, but simply stated that Nero does not suffer from the problem of the Device buffer emptying when burning at 12x on my system, whereas IB does (and so appears to have a superior way method of keeping the Device buffer filled up). I am merely reporting a reproducible problem I have with IB on my system when burning at 12x. volvo - The graphs do not prove my system cannot handle 12x burns. The NEC 4550 uses CAV (Constant Angular Velocity) to write DVD-R which means that the write speed starts out lower than the specified setting, rising as the burn progresses which results in an average burn speed less than specified speed (eg. around 8.5-9x for a 12x burn). Dropouts at certain points in the burn are also normal for an NEC drive (ie. it's just the way they work). Most of the problems on the graphs I posted are because the Device buffer kept emptying during the burn (shown by the white line). The erroneous Max speed is caused by sampling/buffering problems during the burn. I will do another test burn at 12x with Nero CD/DVD Speed which shows a smoother line (apart from the expected dropouts). BTW, the the 2 images burnt in the previous graphs were the same image. The only difference between the two was that the first one was using a 32K Transfer length. Check out the following cdfreaks review page of the NEC 4550 burner which shows a normal 16x burn on DVD-R media (note the drop-outs) http://www.cdfreaks.com/article/255/2 From my tests I personally think my system can handle 12x burning with my external firewire connected burner (during a 16x test, it only struggles at around 14x). If it can indeed handle 12x burning, then I don't see what is the problem of trying to get IB to successfully burn at this speed. I would hope LUK can find the time to look at this issue (or provide me with a test build with the increased priority for the Write thread), but also respect the fact this is a labour of love and so understand if he chooses not to. IB is my preferred burning app and I simply want it to work as well as it can on my system.
dontasciime Posted August 15, 2006 Posted August 15, 2006 (edited) Defenestration I don't get any such problems with Nero Bear in mind Nero will tell you it's burning at the Speed you choose at start when infact it's not writing at that speed. Import/merge this registry entry to see what nero is actually burning at. test before importing reg, then do same burn after importing. Edited August 15, 2006 by dontasciime
LIGHTNING UK! Posted August 15, 2006 Posted August 15, 2006 It's a bit naughty of Windows to not provide the app with enough time slices (especially when set to 'High' priority) to maintain the buffer at 100%. I've added support for reg settings that'll override default thread priority. You can mess around until your heart is content when v2.1 gets released.
Defenestration Posted August 15, 2006 Author Posted August 15, 2006 Hmmm, after some more testing it would now appear that Nero CD/DVD Speed does also have problems when it reaches 12x I haven't done these same tests for a while (6 months or so), but when I originally did them it only started having problems when it reached just over 14x. Not quite sure what has happened to my system to cause this - if anything my system should be faster since the hard drive was upgraded from 40GB 4200rpm to 100GB 7200rpm. After applying the reg settings that dontasciime provided I performed another burn which didn't appear to have any such problems at 12x. Another thing I didn't realize was that different write strategies are used for Verbatims DVD-R (CAV) and Taiyo-Yuden DVD-R (Z-CLV). Thanks for implementing the thread priority reg settings LUK. I will do some more testing with different thread priorities once 2.1 is released to see if that helps. After all that though, I may well end up heeding your advice and switch to burning at 8x from now on due to the conflicting test results I'm getting
Recommended Posts