Reflections

From Guru to Guide

How my forum guides turned into Flash Foundations, SSD Benchmarking 101 and the tools on this site.

On this page 3 sections

Guides are what I have always written, first in forum threads and now on this site. Over the years the forum threads, a boot-time guide, and the test sections in my reviews turned into Flash Foundations, SSD Benchmarking 101, and a set of tools you can run yourself. I write my own code to take measurements, and I build tools so you can run a test yourself instead of reading a description of it. My other essays are on the blog, and the software page lists the tools.

A forum thread becomes a guide, and a guide becomes a tool you run yourselfA three-panel cover. Left: a forum thread drawn as three stacked posts. Center: a guide drawn as a checklist of steps. Right: a tool drawn as a terminal window with a prompt and lines of output.ARTICLE / REFLECTIONSFrom forum thread to toolTHREAD · GUIDE · TOOL01 FORUM THREAD02 GUIDE03 TOOL> runrepeat it yourself

Guides were always the point

I started out answering questions in forum threads. My Windows install and optimization guides on Overclock.net were long lists of steps, and people worked through them on their own machines and asked questions in the thread when they got stuck. At The SSD Review I wrote a guide on cutting boot times, and my Tom’s Hardware reviews each included a section explaining how the drive was tested.

Guides were always the point

Forum guides led to the guides on this site

Three boxes joined by copper arrows, left to right. Forums: Windows install and optimization step lists. Reviews: a boot-time guide and a test section in each review. This site: Flash Foundations, Benchmarking 101 and the validation write-up. Below them, a dashed box says the aim stays the same: show how to check the hardware.01 FORUMSWindows installand optimizationstep lists02 REVIEWSA boot-time guideand a test sectionin each review03 THIS SITEFlash FoundationsBenchmarking 101validation write-upSame aim at every stepexplain the hardware, show how to check it
Figure 1 · Where my guides have appeared, in order: forum threads, then reviews, then this site. Source: the author’s own guides and pages on this site.

A guide has always been the easiest way to make my testing useful to someone else, so I kept doing it here. Flash Foundations is a ten-part series on how NAND flash and SSDs work, from the physics of the cell to the controller and firmware. SSD Benchmarking 101 covers how to test a drive without fooling yourself. How I Made SSD Validation Repeatable describes the process I built for validation work.

Pine-covered ridge in the foreground with a tan rock outcrop, and layered blue mountain ridges under a sky with scattered white clouds.

Then tools

The other change is that I now build tools as well as guides. A test you can run yourself teaches more than a description of it. The software page lists what I have released so far: a hardware stress and telemetry tool called PS-FU, terminal tools such as dtemp and FindIO, Windows utilities including IOSpeX and TriageIO, and browser tools that show how NAND cells drift, how a flash translation layer and garbage collection behave, and whether TRIM is on.

Then tools

The tools come in four kinds

Four equal panels in a two by two grid. Hardware: PS-FU, a stress and telemetry tool. Terminal: dtemp and FindIO. Windows: IOSpeX and TriageIO. Browser: NAND cell drift, FTL and GC, and TRIM check.01 HARDWAREPS-FUstress and telemetry02 TERMINALdtempFindIO03 WINDOWSIOSpeXTriageIO04 BROWSERNAND cell driftFTL and GCTRIM check
Figure 2 · The kinds of tool on the software page: one harness for hardware, terminal tools, Windows utilities and browser tools. Source: the software page on this site.

The goal is the same as it was in those forum threads: explain what the hardware actually does, show how to check it, and let people repeat it for themselves.

Close-up of low green plants and grass blades with a small white feather caught among them, against a soft blurred golden background.

Code as instrumentation

My testing used to center on endurance workloads and close study of power traces. Now it depends on scripting and automation in Python, C++, and Perl, and the code has taken the place of my thermal chambers. Data is only as good as the script that extracts it.

Code as instrumentation

My scripts turn raw data into a reading of the system

Three boxes joined by copper arrows, left to right. The script: Python, C++ and Perl automation. The system: memory under pressure and shifting workloads. The reading: balanced, bending or about to break. Below, a dashed box says raw data becomes patterns and cause and effect.01 THE SCRIPTPython, C++and Perlautomation02 THE SYSTEMmemory underpressure, shiftingworkloads03 THE READINGbalanced,bending, or aboutto breakRaw data, then patternsthen cause and effect
Figure 3 · A script drives a system the way it behaves in the wild, and its output shows whether the system is balanced, bending or about to break. Source: the author’s own test frameworks.

Instead of relying on vendor tools, I build my own. My frameworks are designed to mimic how systems behave in the wild, with memory under pressure, workloads shifting in real time, and controllers making split-second tradeoffs. The scripts show when a system is balanced, when it is bending, and when it is about to break. Turning raw data into patterns and cause and effect lets me show why a technology performs the way it does.

Sources

Primary is the original paper, standard or datasheet. Secondary is a review, a vendor summary or a news report. Measured is my own test data.

Show all 1 sources
  • MeasuredThe author’s own measurements