VOGONS


First post, by [FMC]Ravage

User metadata
Rank Newbie
Rank
Newbie

I know it's common practice for people to get ~128GB SSD's and then leave ~25 percent unallocated for overprovisiong. My question is..what if you use a larger drive (like a 256GB) and then leave half of it unallocated, will all that space get used as overprovisiong or does the 128gb/137gb limit come into play?

Reply 1 of 7, by maxtherabbit

User metadata
Rank l33t
Rank
l33t

over provisioning is effective because it allows the firmware level wear-leveling to work, the system OS doesn't need to "see" the rest of the drive for the firmware to utilize it

Reply 2 of 7, by Doornkaat

User metadata
Rank l33t
Rank
l33t
[FMC]Ravage wrote:

My question is..what if you use a larger drive (like a 256GB) and then leave half of it unallocated, will all that space get used as overprovisiong or does the 128gb/137gb limit come into play?

As maxtherabbit already said generally speaking the OS file system limitations have no influence on regular strategies of over provisioning. Still there are multiple things to consider here:

Firstly BIOS limitations: Because of how drives are recognised by the BIOS you will likely run into problems using a 256GB SSD on say a 440BX motherboard. Most 440BX motherboards received BIOS updates enabling support for up to 137GB HDDs. Some boards got patched with inofficial BIOS. Drives bigger than what's supported by the BIOS may cause the system to lock up on boot. There's useful info on this and other BIOS HDD limitations here: https://www.tldp.org/HOWTO/Large-Disk-HOWTO-4.html
If your desired capacity is not supported there are several workarounds like drive overlay software or additional controllers with their own BIOS.
So the first answer is: Check wether your SSD size is supported by your BIOS.

Secondly OS limitations:
-Win95 is limited to FAT16 meaning a maximum of 4 partitions (1 pimary and 3 extended) of each up to 4GiB with 512 byte blocks (although with integrated tools you can only create 2GiB partitions).
-Starting with Win95B FAT32 is supported with 28bit addressing so a single partition can now be 137438953472 bytes with 512 byte blocks (137GB/128GiB) large. The drive can be larger but with stock Windows writes above the 128GiB barrier will overwrite data within the first 128GiB. However with many controllers there are drivers with 48-Bit-LBA support that tackle this problem so one can create and use up to 4 128GiB partitions (1 pimary and 3 extended) with 512 byte blocks.
(btw: With pre-SP3 Win2k and pre-SP1 WinXP you'd have to manually activate 48-Bit-LBA support!)
This makes the second answer: You may actually be wasting space formatting only 128GiB on a 256GB SSD! 😉

Thirdly the SSD controller:
For over provisioning to have any effect you'll have to have a somewhat smart controller. With any SSD currently avaliable this should be the case but with solutions like IDE-to-SD-card adaptors you never know.
Over provisioning with SSDs has two general purposes: a) reducing the amount of wear per avaliable storage/having spare flash cells avaliable for when worn out cells start to die, and b) keeping the drive fast.
a) will require an SSD/flash controller that performs wear leveling routines, meaning it arranges data so cells in better condition get written to more often than more damaged ones. Better SSDs even have "hidden" storage that only the SSD controller can see so they're over provisioned even when all avaliable storage is allocated.
b) will require an SSD/flash controller that intelligently (re)distributes data and does garbage collection routines. Intelligent distribution of data allows for more storage to be accessed at the same time resulting in higher drive speed. This can be helped by never filling the SSD completely so it can always optimally arrange data without being restricted by avaliable free space. Flash blocks can only be written to as a whole even though they can contain data from multiple files. If a flash block contains data from multiple files and one of those files is deleted this means the now unused part of that flash block is now still filled with data and can not be written to again until the whole flash block is rewritten. Garbage collection will enable the SSD to recombine data from multiple partially deleted flash block to fewer completely filled flash blocks thereby amplifying write speeds. In order to recombine data from those cells it has to be either stored in cache or directly be rewritten to empty cells. With little or no cache garbage collection profits greatly from free space.
(btw: TRIM, which is not supported by Win9x/2k/XP, mostly tells the controller which flash blocks no longer contain any data without the controller having to check the block first. The flash block is either overwritten or simply marked as empty so with the next write it can be simply written to without being checked for relevant data first. This is why without TRIM SSDs will get a bit slower with time.)
Therefore the third answer is: It depends on your SSD/flash controller wether it supports your plan for over provisioning. A current SSD most likely will. Some SSDs already have "invisible" flash for built in over provisioning.

And lastly the practical value of over provisioning:
Win9x doesn't nearly do as many writes all the time as XP and later versions do, especially with lots of RAM and a small pagefile.sys. Also most of us probably don't use their Win9x machine for web browsing or update their games constantly. Compared to your daily driver PC you'll have very little wear on your Win9x SSD. In a Win9x gaming PC your SSD is likely to outlast your HDD.
Using and filling up a very basic SSD will usually reduce its performance but a slow 2019 SSD is still an order of magnitude faster than a 2001 HDD. A 1GHz PIII will severely bottleneck a normal 128GB SSD. With the amount of regular reads and writes on Win9x leaving 1GB free on a fully formatted boot SSD should be enough to not feel such a system getting slower. Maybe in synthetic benchmarks but I can't imagine it will be noticeably slower in booting or gaming.

PS: I know some of this is oversimplified for easier understanding but I believe none of it is fundamentally wrong. If anyone finds any of the statements to be actually false please let me/us know so it can be corrected.

Reply 4 of 7, by [FMC]Ravage

User metadata
Rank Newbie
Rank
Newbie

Thanks all, lots of useful info there! The main reason I wanted to use a larger drive was to help it's life span...but I guess 9x isn't as rough on them as I thought. One more question; is there a big difference between dram & dramless drives under 9x? I know under windows 10 it can be quite noticeable depending on what you are doing.

Reply 5 of 7, by Windows9566

User metadata
Rank Member
Rank
Member

are SSDs more reliable than using a CF card or SD card?

R5 5600X, 32 GB RAM, RTX 3060 TI, Win11
P3 600, 256 MB RAM, nVidia Riva TNT2 M64, SB Vibra 16S, Win98
PMMX 200, 128 MB RAM, S3 Virge DX, Yamaha YMF719, Win95
486DX2 66, 32 MB RAM, Trident TGUI9440, ESS ES688F, DOS

Reply 6 of 7, by cyclone3d

User metadata
Rank l33t++
Rank
l33t++
Windows9566 wrote:

are SSDs more reliable than using a CF card or SD card?

Yes. And much less finicky at least in my experience.

Yamaha modified setupds and drivers
Yamaha XG repository
YMF7x4 Guide
Aopen AW744L II SB-LINK

Reply 7 of 7, by Doornkaat

User metadata
Rank l33t
Rank
l33t
[FMC]Ravage wrote:

One more question; is there a big difference between dram & dramless drives under 9x? I know under windows 10 it can be quite noticeable depending on what you are doing.

In synthetic benchmarks there can be a difference but in regular use you shouldn't notice anything.
Any period correct CPU will severely bottleneck any current half decent 128GB SSD.
DRAM cache on SSDs mostly helps with large writes and huge amounts of small writes over a short time. The data can be stored in fast DRAM and the flash controller has a bit more time to distribute data into flash memory. Those kinds of writes don't really happen on Win9x. Starting with 128MB of RAM your pagefile even becomes irrelevant, meaning it's almost all reads from and very little writes to the HDD/SSD.

Windows9566 wrote:

are SSDs more reliable than using a CF card or SD card?

Generally speaking yes. There are different qualities of flash memory and with SSDs you get rather good quality while SD cards have flash cells that can withstand much fewer writes. Being aimed more at the professional market CF cards usually have more decent flash memory than SD cards but not as good as SSDs.
As a rule of thumb I'd say SD cards are best left to pure DOS PCs because they perform minimal writes. CF cards are a good compromise for compatibility reasons because they come in smaller capacities but SSDs are to be perferred whenever possible, especially with the current low prices.