Jump to content

DiskSpeed, hdd/ssd benchmarking (unRAID 6+), version 2.10.8


Recommended Posts

10 hours ago, manofoz said:

I see this in the motherboard manual. Looks like it's intent is if you want to run PCIE M.2 controllers but this may be simular, think it's worth a shot? 

That bottom x16 slot is attached to the PCH, it will always run at x4, you'd need a different board to have both HBAs running at x8.

Link to comment
On 10/7/2023 at 9:41 AM, manofoz said:

Current Link Speed: (ok) width (downgraded) ( max throughput)

 

This display is due to parsing, your system is outputting a display that I haven't encountered and thus didn't properly parse. If you could submit a controller debug file (click on the debug link in the DiskSpeed app at the bottom of the page), I can take a look at it.

Link to comment
On 10/8/2023 at 9:02 PM, jbartlett said:

 

This display is due to parsing, your system is outputting a display that I haven't encountered and thus didn't properly parse. If you could submit a controller debug file (click on the debug link in the DiskSpeed app at the bottom of the page), I can take a look at it.

 

Thanks! I didn't even realize it was parsing properly and was able to use it to track down that my HBA is only getting x4 lanes instead of x8 and hence is downgraded. Sounds like it still has enough bandwidth at x4 but I may swap it out for on board and PCIE SATA if I still get slow speeds after replacing my 5400rpm drives.

 

Here is the controller debug file. Let me know if there is anything else I can provide to help: 

manofoz_DiskSpeedControllerDebug_20231009_225142.tar.gz

Link to comment
On 10/8/2023 at 4:28 AM, JorgeB said:

That bottom x16 slot is attached to the PCH, it will always run at x4, you'd need a different board to have both HBAs running at x8.

 

Yeah this was a f-up on my part, I thought I read these were x4 or that x4 would be fine. I have 4 on board SATA and can get a different type of card if it's a problem. Maybe just moving 4 HDDs to the on board SATAs would lessen the load of the HBA with 4 lanes?

 

Or maybe it's not a problem at all, I'm going to replace my slowest disk and see what Storage System Stats look like as it rebuilds. Just waiting for a very long preclear to finish. 

Link to comment
On 10/9/2023 at 3:01 AM, timetraveler said:

Maybe, this is a silly question: but how to get the graph that shows all drives in comparison? I can see it after doing a benchmark of a drive and it also shows up after scanning the controllers, but if I just go to the homepage that spot is empty

 

I've noticed recently that started happening in the 3.0 Alpha version but haven't investigated it until your mention of it in the 2.x version as I've never seen it now show up in version 2.x. The graph is displayed if the file (smb share path) \\nas\appdata\DiskSpeed\Instances\local\driveinfo\DriveBenchmarks.txt exists which contains the graph data.

 

Can you check to see if that file exists and can be viewed when the graph is or is not visible?

Link to comment
15 hours ago, manofoz said:

Thanks! I didn't even realize it was parsing properly and was able to use it to track down that my HBA is only getting x4 lanes instead of x8 and hence is downgraded. Sounds like it still has enough bandwidth at x4 but I may swap it out for on board and PCIE SATA if I still get slow speeds after replacing my 5400rpm drives.

 

It looks like the tools I use to gather the information changed their layout because I see that on my controller too. Will make it easier for me to fix.

 

Have you tried a controller benchmark yet? It'll tell you if you are reaching capacity of what your controller can support.

 

image.thumb.png.08892734295ef3f1dbf28d8f3c924fbb.png

Link to comment
1 hour ago, jbartlett said:

 

I've noticed recently that started happening in the 3.0 Alpha version but haven't investigated it until your mention of it in the 2.x version as I've never seen it now show up in version 2.x. The graph is displayed if the file (smb share path) \\nas\appdata\DiskSpeed\Instances\local\driveinfo\DriveBenchmarks.txt exists which contains the graph data.

 

Can you check to see if that file exists and can be viewed when the graph is or is not visible?

 

 

after starting the container again I checked the file and it is indeed present. Upon start I also see the graph. After a refresh the graph is gone, but the file stays in place.

 

After that I performed a Full benchmark and the file did go away during the benchmark (drivebenchmarks.json stays)

it stays absent, until I click continue, when it reappears and also shows the graph on the main page.
Again after a refresh the graph is gone, but the file remains

 

image.png.b8522f75bda9d3ad73b3577467f5bded.png

  • Thanks 1
Link to comment
4 hours ago, jbartlett said:

 

It looks like the tools I use to gather the information changed their layout because I see that on my controller too. Will make it easier for me to fix.

 

Have you tried a controller benchmark yet? It'll tell you if you are reaching capacity of what your controller can support.

 

image.thumb.png.08892734295ef3f1dbf28d8f3c924fbb.png

 

Thanks for the tip! Looks like my controller is not the bottleneck! Just gotta replace some real slow drives...

image.thumb.png.241d5185642b77b72211df860724b335.png

Link to comment

Hello all, is there a reason why I'm limited to 2 GB/s for this setup?

R730, controller is an LSI SAS9207-8e 8-Port External HBA 

All drives are heavily used / refurbished HUH728080ALE604 contained in a DS4246 with an IOM6 controller connected via a QSFP SFF-8436 to SFF-8088 cable.

 

DiskSpeed reads the following.

Current Link Speed: (ok) width (ok) ( max throughput)
Maximum Link Speed: 8GT/s width x8 (7.88 GB/s max throughput)

controller-benchmark.thumb.jpeg.281b9151f80cfdaf483e06aa2df7e089.jpeg

 

Link to comment
  • 3 weeks later...

I just installed and ran it for the first time on 2 different unraid servers (6.12.4).  After going for a while, they both stopped with the  same error below.   Am I doing something wrong?  

Unrelated, just something I noticed, there is a typo, "iw" in "following" needs to be flipped:   Bandwidth was capped on the folloiwng drives

 

Thanks in advance for any help that can be provided!

 

10:31:40 Spot: [30] ScanLoc: [1831412] SizeLoc: [2.4 TB] Avg: [187.74 MB] AvgMin: [187.43 MB] AvgMax: [188.74 MB]
Chart1.series[10].addPoint([2400468336640,187735433]);
parent.document.getElementById('Speed_controller_0000_0a_00_0').innerHTML=''; CMD: dd if=/dev/sdj of=/dev/null bs=1310720 skip=2136647 iflag=direct conv=noerror status=progress
10:31:57 Spot: [35] ScanLoc: [2136647] SizeLoc: [2.8 TB] Avg: [175.23 MB] AvgMin: [174.33 MB] AvgMax: [175.64 MB]
Chart1.series[10].addPoint([2800545955840,175233181]);
parent.document.getElementById('Speed_controller_0000_0a_00_0').innerHTML=''; CMD: dd if=/dev/sdj of=/dev/null bs=1310720 skip=2441883 iflag=direct conv=noerror status=progress
10:32:14 Spot: [40] ScanLoc: [2441883] SizeLoc: [3.2 TB] Error: Error invoking external process

The error occurred in /var/www/BenchmarkDriveController.cfm on line 845

843:                                 "chmod 666 #ResultsFN#" & Chr(10)>
844:                         <CFFILE action="write" file="#OutDir#/read_spot_#Spot2#.sh" mode="766" output="#cmd#" addnewline="NO">
845:                         <CFEXECUTE name="#OutDir#/read_spot_#Spot2#.sh" timeout="3060" />
846:                         <CFSET Result=GetReadAvg(ResultsFN,Drive.Attrib.Configuration.RPM,2,MaxGap)>
847:                     <CFELSE>
848:                         <CFOUTPUT>CMD: dd if=/dev/#DriveID# of=/dev/null bs=#BS# skip=#ScanLoc# iflag=direct conv=noerror status=progress<br>

Link to comment
On 10/27/2023 at 8:25 AM, machineglow said:

Hey, just checking in to see if benchmarking USB attached drives is still on the roadmap?  thx!

 

Yup, in version 3, including benchmarking multi-device setups like RAIDs and the like. I've been working on v3 more frequently to get it ready for a beta release.

  • Thanks 1
Link to comment
On 10/29/2023 at 12:30 PM, broncosaddict said:

Unrelated, just something I noticed, there is a typo, "iw" in "following" needs to be flipped:   Bandwidth was capped on the folloiwng drives

 

Thank you, I fixed it for the next release.

 

On 10/29/2023 at 12:30 PM, broncosaddict said:

The error occurred in /var/www/BenchmarkDriveController.cfm on line 845

 

This is the command it was trying to execute. Can you please SSH into the server and enter this command?

dd if=/dev/sdj of=/dev/null bs=1310720 skip=2441883 iflag=direct conv=noerror status=progress

 

It will run until the end of the drive so press CTRL-C if it runs without issue for 30 seconds (the app stops this after 15 seconds).

 

If there is no error and after you stop it, try entering Docker and then retrying it

docker exec -it DiskSpeed bash

dd if=/dev/sdj of=/dev/null bs=1310720 skip=2441883 iflag=direct conv=noerror status=progress

Link to comment
On 10/30/2023 at 9:07 AM, broncosaddict said:

Don't know if you can do anything about it, but my Sabrent Rocket SSD's aren't parsing correctly.  I've attached a screenshot to show you what I mean.   Let me know if you need any additional info.

Thanks!

image.png

 

If you mean the Vendor, a lot of SSD's do not populate the Vendor field and I have to add logic to catch those to pull the vendor from the model, if possible. This is why I provide the option to change the vendor. If you enter "Sabrent" into the vendor field, save, and then rescan, it'll pull up the image if someone has already submitted on. Otherwise, you can edit the drive, edit the image, and provide one yourself.

 

If you're referring to the data units read/written, that's based off the sector size multiplied by the unit.

 

If none of the above are what you are referring to, then you'll have to be more specific.

Link to comment
23 hours ago, jbartlett said:

 

If you mean the Vendor, a lot of SSD's do not populate the Vendor field and I have to add logic to catch those to pull the vendor from the model, if possible. This is why I provide the option to change the vendor. If you enter "Sabrent" into the vendor field, save, and then rescan, it'll pull up the image if someone has already submitted on. Otherwise, you can edit the drive, edit the image, and provide one yourself.

 

If you're referring to the data units read/written, that's based off the sector size multiplied by the unit.

 

If none of the above are what you are referring to, then you'll have to be more specific.

It works perfectly fine and it wasn't bothering me.  My fault, I thought I read in one of the post you wanted to notified.  

Thanks!

Link to comment
23 hours ago, jbartlett said:

 

Thank you, I fixed it for the next release.

 

 

This is the command it was trying to execute. Can you please SSH into the server and enter this command?

dd if=/dev/sdj of=/dev/null bs=1310720 skip=2441883 iflag=direct conv=noerror status=progress

 

It will run until the end of the drive so press CTRL-C if it runs without issue for 30 seconds (the app stops this after 15 seconds).

 

If there is no error and after you stop it, try entering Docker and then retrying it

docker exec -it DiskSpeed bash

dd if=/dev/sdj of=/dev/null bs=1310720 skip=2441883 iflag=direct conv=noerror status=progress

Both commands ran without issue.

 

Don't know if this helps, but I forgot to post it the other day.   I tried rerunning the benchmark the same day this failed.  It started from the beginning again, but it went twice as far....the first time it failed around the 10 minute mark, the second was around the 20 minute mark.   

At that point I benchmarked the disks that hadn't been one by one and had no problems.   Did the same with the other unraid setup.

 

 

Link to comment

Afternoon, I have the same issue as others who have reported a blank screen when running a benchmark on a drive.  I can benchmark NVME drives normally and the controller normally.  It is just the SATA drives connected to the onboard SATA controller that will not benchmark.  The motherboard is an Asus Pro WS W680M-ACE SE.  The controller shows as: 
Alder Lake-S PCH SATA Controller [AHCI Mode]

ASUSTeK Computer Inc. (Intel Corporation)
SATA controller
Type: Onboard Controller

 

The benchmark never times out and I don't get an error.  Clicking on Abort Benchmark buttton does nothing.  I tried running ShowDebug in both Chrome and Firefox but can't get the iframe error to show.  I am running version 2.10.7.2 on Unraid 6.12.4.  I have another server running 2.10.7.2 on Unraid 6.12.4 but the SATA drives are connected to an HBA card.  That server everything benchmarks fine NVME, Controller, and SATA drives.  Let me know if you need me to provide more information.

 

DiskSpeed No Benchmark.jpg

Edited by SShadow
Link to comment
8 hours ago, broncosaddict said:

It works perfectly fine and it wasn't bothering me.  My fault, I thought I read in one of the post you wanted to notified.  

Thanks!

Sorry, I still don't have any idea what you were referring to.

 

8 hours ago, broncosaddict said:

Don't know if this helps, but I forgot to post it the other day.   I tried rerunning the benchmark the same day this failed.  It started from the beginning again, but it went twice as far....the first time it failed around the 10 minute mark, the second was around the 20 minute mark.   

At that point I benchmarked the disks that hadn't been one by one and had no problems.   Did the same with the other unraid setup.

Was it reporting anything like retrying (x)? If so, check the SpeedGap box on the drive selection screen. How many drives do you have attached to the controller that's not completing? It's set to timeout after 50 minutes, figured that should be enough time - unless someone has a crazy loaded down controller. Are you that someone?

Link to comment
6 hours ago, SShadow said:

The benchmark never times out and I don't get an error.  Clicking on Abort Benchmark buttton does nothing.  I tried running ShowDebug in both Chrome and Firefox but can't get the iframe error to show.  I am running version 2.10.7.2 on Unraid 6.12.4.  I have another server running 2.10.7.2 on Unraid 6.12.4 but the SATA drives are connected to an HBA card.  That server everything benchmarks fine NVME, Controller, and SATA drives.  Let me know if you need me to provide more information.

Interesting that you said you couldn't find an iframe. If the iframes were rendered, clicking to the right of the period where the cursor is still in the text cursor and not an arrow cursor will make those iframes visible.

image.png.dcd65637288adbd54cf9db04b7973278.png

 

Can you view the source and look for the following? Search for "The Error Occurred in" and look for a file/line below it. The error message itself will be above. The code below is just a quick bit I put together to get the HTML that gets generated.

<tr>
		<td class="label">Message</td>
		<td>variable [B] doesn't exist</td>
	</tr>
	
<tr>
				<td class="label">Stacktrace</td>
				<td>The Error Occurred in<br>

							<a class="-lucee-icon-minus" id="__btn$1" onclick="__LUCEE.oc( this );" style="cursor: pointer;">
								<b>/var/www/test.cfm: line 3</b>
							</a>
							<br>

 

 

Link to comment

I must not be looking in the right place because I can not find code similar to what you listed.  When I run inspect the only difference between the working server and the server not working is this error:

 

Benchmark.cfm:166  Uncaught TypeError: Cannot read properties of null (reading 'style')
    at CheckForFinished (Benchmark.cfm:166:42)
    at Benchmark.cfm:173:1
CheckForFinished @ Benchmark.cfm:166
(anonymous) @ Benchmark.cfm:173

On the working server I can click on the area behind the period and get the iframe window to show:
634751551_DiskSpeedBenchmark.thumb.jpg.badb6d80a6dbe84430bd18dc1eb6b3b0.jpg

 

On the server not working clicking in the same area does nothing:
1942642171_DiskSpeedNoBenchmark.thumb.jpg.150d03220b913d1bd4fc081e2f1ab723.jpg

 

If I view the source code on the working server it looks like this:

</script>
<form action="index.cfm" method="get"><input type="submit" value="Continue" style="display:none" id="continuebutton"></form>




	
	


	
	
	
	
		
		
	
	<table border="0" cellpadding="0" cellspacing="0">
		<tr>
			<td valign="middle">
				<div id="controller_0000_3b_00_0">SAS3224 PCI-Express Fusion-MPT SAS-3: Starting...</div>
			</td>
			<td>&nbsp;&nbsp;</td>
			<td id="Progress_controller_0000_3b_00_0_td">
				<table border="0" cellpadding="0" cellspacing="0">
					<tr>
						<td><progress id="Progress_controller_0000_3b_00_0" value="0" max="100"></progress></td>
						<td>&nbsp;</td>
						<td><div id="Progress_controller_0000_3b_00_0_Per">0%</div></td>
						<td>&nbsp;</td>
						<td><div id="Speed_controller_0000_3b_00_0">&nbsp;</div></td>
					</tr>
				</table>
			</td>
		</tr>
	</table>
	<iframe src="BenchmarkDriveController.cfm?Controller=0000%3A3b%3A00%2E0&Drives=sdg&Per=10&scanid=1699015482305&Seconds=15&Slots=sdg-0&DisableSpeedGap=1&SSDSpot=1&&MaxBytes=8001563222016&MinSSDSpaceFree=5&DetectSSDBuffer=0&TestFileSizeOverride=0&WaitBeforeRead=5&SeriesList1=Parity%202%20%28sdg%29&SeriesList2=Parity%202%20%28sdg%29" width="1200" height="400" style="display:none" id="controller_0000_3b_00_0_debug"></iframe>

<script language="Javascript">
var Debugging=0;
function ShowDebug()
{
	if (Debugging == 0) {
		Debugging=1;
		
			document.getElementById('controller_0000_3b_00_0_debug').style.display='block';
		
	} else {
		Debugging=0;
		
			document.getElementById('controller_0000_3b_00_0_debug').style.display='none';
		
	}
}
</script>

 

On the server not working the source code looks like this:

</script>
<form action="index.cfm" method="get"><input type="submit" value="Continue" style="display:none" id="continuebutton"></form>




	
	


<script language="Javascript">
var Debugging=0;
function ShowDebug()
{
	if (Debugging == 0) {
		Debugging=1;
		
	} else {
		Debugging=0;
		
	}
}
</script>

 

I know this isn't exactly what you asked for but I hope it helps.  Let me know if you need more.

Spoiler

 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...