Unofficial Faster Preclear


Recommended Posts

I just tried to use the URL from the first post, no luck.  Has several errors and doesn't install anything.  What is the current URL for the unofficial Faster Preclear?

Just tried that link - and it takes me to a page (on Mediafire) for downloading the ZIP file containing the files needed.

Link to comment

I just tried to use the URL from the first post, no luck.  Has several errors and doesn't install anything.  What is the current URL for the unofficial Faster Preclear?

Just tried that link - and it takes me to a page (on Mediafire) for downloading the ZIP file containing the files needed.

 

And i downloaded the zip file and it contains all the files needed for human to do manual install of the script.

Link to comment
  • 2 weeks later...

Ok so i installed the plugin and put the fast preclear files in the same directory i assume you have to rename it otherwise the plugin doesn't recognize the script. The files i put in the scrip folder are the preclear_bjp.sh which i had to rename to preclear_disk.sh for the plugin to read it and from the x64 folder i put the readvz. Was this the correct steps? Also when i do the preclear option on the plugin page i get some options which most i can undestand but on the part that says fast post read should i check yes or is it automatically built in to the new scrip? And read size and write size i just left as default as i don't know what those are exactly for.

Link to comment

got the same results as smackovits it seems:

 

== Disk /dev/sdi has NOT been precleared successfully
== /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file

 

both files are in /boot.

Link to comment

 

 

got the same results as smackovits it seems:

 

== Disk /dev/sdi has NOT been precleared successfully
== /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file /boot/preclear_bjp.sh: line 1182: /boot/readvz: cannot execute binary file

 

both files are in /boot.

 

Only readvz should be in root,  the other files (at least for me)  are in plug-ins folder.  Also,  is looks like you didn't rename the file correctly.  Should be preclear_disk.sh.

Link to comment

TL;DR - Do the faster and the original preclear scripts continue the post-read all the way to the end even if it has already read non-zero data?

 

Longer story

 

I just finished (finally, successfully) preclearing a 6TB WD Red with the faster preclear. All attempts were using the plugin but I don't think I would have had a different result if I had run the scripts from the command line.

 

The 1st attempt, I did 1 complete cycle, and after it was finished, it said the disk passed, and the smart data was good, but the post-read had detected non-zero data.

 

The 2nd attempt, I skipped the pre-read and just did the clear and post-read. Same result.

 

The 3rd attempt, I just did the post-read, but with the original script. Same result.

 

Then, I decided to change my connections a little since I had been using an eSATA enclosure on an expansion card, and my intent was to put the drive in as parity using a motherboard port. I didn't expect that to make any difference since I had precleared several drives like that in the past, just nothing larger than 4TB.

 

And I don't think the connections did matter, because I discovered what I think may have been the actual problem. Before booting up after the changes, I did a memtest and discovered that 1 of my 2x8GB memory sticks was bad. I tested each of them separately in both slots and it was definitely that 1 stick.

 

After removing that memory and just running with only 8GB RAM, I did the preclear again.

 

This 4th attempt skipped the pre-read and just did the clear and post-read with the faster script. Success!

 

But, see my question at the top.

Link to comment

TL;DR - Do the faster and the original preclear scripts continue the post-read all the way to the end even if it has already read non-zero data?

 

Longer story

 

I just finished (finally, successfully) preclearing a 6TB WD Red with the faster preclear. All attempts were using the plugin but I don't think I would have had a different result if I had run the scripts from the command line.

 

The 1st attempt, I did 1 complete cycle, and after it was finished, it said the disk passed, and the smart data was good, but the post-read had detected non-zero data.

 

The 2nd attempt, I skipped the pre-read and just did the clear and post-read. Same result.

 

The 3rd attempt, I just did the post-read, but with the original script. Same result.

 

Then, I decided to change my connections a little since I had been using an eSATA enclosure on an expansion card, and my intent was to put the drive in as parity using a motherboard port. I didn't expect that to make any difference since I had precleared several drives like that in the past, just nothing larger than 4TB.

 

And I don't think the connections did matter, because I discovered what I think may have been the actual problem. Before booting up after the changes, I did a memtest and discovered that 1 of my 2x8GB memory sticks was bad. I tested each of them separately in both slots and it was definitely that 1 stick.

 

After removing that memory and just running with only 8GB RAM, I did the preclear again.

 

This 4th attempt skipped the pre-read and just did the clear and post-read with the faster script. Success!

 

But, see my question at the top.

 

Not sure. The fast preclear does not change this logic - so however it works it works. I believe it does the entire process and reports all of the mismatched (non-zero) values at the end.

 

Guess all that crap that gary posts about ECC memory may have some merit after all. :o

Link to comment

... Guess all that crap that gary posts about ECC memory may have some merit after all. :o

 

:) :)

 

If you're building a fault-tolerant server so your data is still accessible even if a disk fails, it certainly seems you'd also want to have fault-tolerant memory as well.    ECC modules not only correct single-bit errors, but they REPORT them, so you know you're having issues before they bite you.

 

Link to comment

Hey!

Does this include the changes made to the "official" preclear script by Joe L.?

 

# Version 1.15  - Added export of LC_CTYPE=C to prevent unicode use on 64 bit printf.

 

Your changelog is not clear about this  :)

 

As an additional request: The script should look for the readvz file in the same folder as the actual script is, for people who dont like their /boot/ to be filled ;)

Link to comment

Hey!

Does this include the changes made to the "official" preclear script by Joe L.?

 

# Version 1.15  - Added export of LC_CTYPE=C to prevent unicode use on 64 bit printf.

 

Your changelog is not clear about this  :)

 

As an additional request: The script should look for the readvz file in the same folder as the actual script is, for people who dont like their /boot/ to be filled ;)

The actual script it uses is up to you, since no script is included. You have to take care of that yourself.
Link to comment
  • 2 months later...

I just ran this script for the first time on a new 5TB drive. It looks to have passed but isn't the time and speed awfully slow? Even for a 5900rpm drive?

 

 ========================================================================1.15b
== invoked as: /boot/config/plugins/preclear.disk/preclear_disk.sh -c 1 -J /dev/sds
== ST5000DM000-1FK178   W4J0SK22
== Disk /dev/sds has been successfully precleared
== with a starting sector of 1 
== Ran 1 cycle
==
== Using :Read block size = 1000448 Bytes
== Last Cycle's Pre Read Time  : 12:50:39 (108 MB/s)
== Last Cycle's Zeroing time   : 39:17:49 (35 MB/s)
== Last Cycle's Post Read Time : 23:10:53 (59 MB/s)
== Last Cycle's Total Time     : 75:20:25
==
== Total Elapsed Time 75:20:25
==
== Disk Start Temperature: 25C
==
== Current Disk Temperature: 27C, 
==
============================================================================
** Changed attributes in files: /tmp/smart_start_sds  /tmp/smart_finish_sds
                ATTRIBUTE   NEW_VAL OLD_VAL FAILURE_THRESHOLD STATUS      RAW_VALUE
      Raw_Read_Error_Rate =   114     100            6        ok          80648776
          Seek_Error_Rate =    72     100           30        ok          20026851
         Spin_Retry_Count =   100     100           97        near_thresh 0
         End-to-End_Error =   100     100           99        near_thresh 0
  Airflow_Temperature_Cel =    73      75           45        ok          27
      Temperature_Celsius =    27      25            0        ok          27
   Hardware_ECC_Recovered =   114     100            0        ok          80648776
No SMART attributes are FAILING_NOW

0 sectors were pending re-allocation before the start of the preclear.
0 sectors were pending re-allocation after pre-read in cycle 1 of 1.
0 sectors were pending re-allocation after zero of disk in cycle 1 of 1.
0 sectors are pending re-allocation at the end of the preclear,
    the number of sectors pending re-allocation did not change.
0 sectors had been re-allocated before the start of the preclear.
0 sectors are re-allocated at the end of the preclear,
    the number of sectors re-allocated did not change. 
============================================================================

Link to comment

I just ran this script for the first time on a new 5TB drive. It looks to have passed but isn't the time and speed awfully slow? Even for a 5900rpm drive?

 

 ========================================================================1.15b
== invoked as: /boot/config/plugins/preclear.disk/preclear_disk.sh -c 1 -J /dev/sds
== ST5000DM000-1FK178   W4J0SK22
== Disk /dev/sds has been successfully precleared
== with a starting sector of 1 
== Ran 1 cycle
==
== Using :Read block size = 1000448 Bytes
== Last Cycle's Pre Read Time  : 12:50:39 (108 MB/s)
== Last Cycle's Zeroing time   : 39:17:49 (35 MB/s)
== Last Cycle's Post Read Time : 23:10:53 (59 MB/s)
== Last Cycle's Total Time     : 75:20:25
==
== Total Elapsed Time 75:20:25
==
== Disk Start Temperature: 25C
==
== Current Disk Temperature: 27C, 
==
============================================================================
** Changed attributes in files: /tmp/smart_start_sds  /tmp/smart_finish_sds
                ATTRIBUTE   NEW_VAL OLD_VAL FAILURE_THRESHOLD STATUS      RAW_VALUE
      Raw_Read_Error_Rate =   114     100            6        ok          80648776
          Seek_Error_Rate =    72     100           30        ok          20026851
         Spin_Retry_Count =   100     100           97        near_thresh 0
         End-to-End_Error =   100     100           99        near_thresh 0
  Airflow_Temperature_Cel =    73      75           45        ok          27
      Temperature_Celsius =    27      25            0        ok          27
   Hardware_ECC_Recovered =   114     100            0        ok          80648776
No SMART attributes are FAILING_NOW

0 sectors were pending re-allocation before the start of the preclear.
0 sectors were pending re-allocation after pre-read in cycle 1 of 1.
0 sectors were pending re-allocation after zero of disk in cycle 1 of 1.
0 sectors are pending re-allocation at the end of the preclear,
    the number of sectors pending re-allocation did not change.
0 sectors had been re-allocated before the start of the preclear.
0 sectors are re-allocated at the end of the preclear,
    the number of sectors re-allocated did not change. 
============================================================================

 

Looks like you didn't use the fast preclear switch - so it ran as the stock preclear. That explains why the post read verify was so much slower than the pre-read.

 

As for the slow zeroing time, I am not sure.

Link to comment

I was reading the change log of the original preclear and it reads as if the fast post read flag was added to the original preclear. Is that correct or are there still other difference between both versions?

 

I am not sure. I believe that the plugin renames the fast preclear to the same name as the stock preclear.

 

The only difference between the stock preclear and the fast preclear is the sped up post read/verify. And the default is to NOT use the fast version. The fast version requires the "-f" flag, and the readvz needs to be on the root of the flash.

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.