Using/Booting NVME drives on old desktop computers.

Moderator: Forum moderators

Post Reply
User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Using/Booting NVME drives on old desktop computers.

Post by wizard »

Using NVME drives on old desktop computers.

This is a work in progress and lacks polish, but will give users a way to test the concept.

This topic is a record from research and test done on both MBR and UEFI computers. It can be applied to systems ranging from Pentium single core to Multicore computers. It primarily adds fast storage and/or fast booting to computers where the NVME is not recognized as a boot device in bios.

There is a large body of information on the internet, much of it for users of "Hackintosh" (MacOS on Intel PC), some on Linux and of course none on Puppy.

My conclusion, after doing the testing, is most users will do better just using a SATA SSD to gain a speed increase, since they require no special tweaking. As of this writing there is no real cost difference and the NVME speed advantage, particularly for Puppy, is measured in seconds.

If you are still interested, read on, the "Use" cases will be in multiple post.

Why do it?
1. Speed, NVME drives are 2-3 times faster than SATA SSD and 10-12 times faster than a HDD.
2. Space, maybe your computer doesn't have room for an extra internal drive.
3. You just want to see if it will work (that would be me).

Hardware requirements:
-Motherboard (Intel 64bit CPU) with an available PCIe slot, and that can boot from USB
-NVME M.2, PCIe, M-key drive
-NVME M-key to PCIe adapter

adapter.jpg
adapter.jpg (65.2 KiB) Viewed 1265 times

Mine was purchased on Ebay (about $2 US) described as: 1*NVMe M.2 NGFF SSD to PCI-E PCI express 3.0 16x x4 adapter riser card conH4

Only tested with 64bit OS's.

For reference, my test NVME is a 256gb setup as follows:
Partiton table = GPT
-Partition1 = 100mb, fat32, ESP. set boot flag for grub2
-Partition2 = 50gb, ntfs, for win11
-Partition3 = 20gb, ext3 for BW64, F95, and MX-Linux frugal install

Here is my NVME grub.cfg for a example:

grub-nvme.cfg.gz
Relmove fake .gz
(1.17 KiB) Downloaded 21 times

Use cases:
-Storage Only (post #2)
-Puppy only booting (post #3)
-Multi-boot on MBR computers (post #4)
-Multi-boot on UEFI computers (post #5)

wizard

Last edited by wizard on Thu May 09, 2024 2:20 pm, edited 2 times in total.

Big pile of OLD computers

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

Storage Only
Comment: This should also work with 32bit Pups

This is the easiest setup.
Install the adapter and NVME drive

Partition and format the NVME:
-boot Puppy
-Menu>System>Gparted
--choose any partition table, partitions and file system(s) that fit your needs

Last edited by wizard on Wed May 08, 2024 1:50 pm, edited 3 times in total.

Big pile of OLD computers

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

Puppy Only Booting
Comment: This may also work with 32bit Pups

If you have an existing internal drive already setup and working consider creating a bootable Puppy USB for testing purposes.

Additional Requirements:
-Bootable internal drive or USB with Grub2 installed
-Puppy installed in a directory on the NVME
-Identical directory name created on the boot device

How it works:
This uses a "split install" suggested by @rcrsn51 . Booting is actually started from the internal drive or from a bootable USB, then all of the Puppy files are read from the NVME.

Install the adapter and NVME drive in the PCIe slot

Partition and format the NVME:
-boot Puppy
-Menu>System>Gparted
--choose any file system(s) that fit your needs
-at least one ext3 or ext4 partition for Puppy installs

Install Puppy:
-boot Puppy
-Menu>Setup>FrugalPup>Puppy
Be sure to make a directory for the Puppy install. My test install for BookwormPup64 uses BW64 as the directory.
-create the same name directory on the boot device
-copy intrd.gz, vmlinuz, and the zdrv files from the NVME Puppy directory to the same directory on the boot device.

Get the UUID's for the boot device Puppy directory partiton and the NVME Puppy directory partition.
-open a terminal and type: blkid

Open grub.cfg on the boot device and add this entry:

code:

Code: Select all

menuentry 'bw64 test'{
  search --no-floppy --set=root --fs-uuid 21dea449-bad1-4e79-b67c-554004eb1ab4
  linux /bw64/vmlinuz  root=UUID=5b3cfc1c-d752-4686-b6af-82c8c4f39b6e psubdir=/bw64 pmedia=usbflash pfix=nocopy,fsck
  initrd /bw64/initrd.gz
}

-change all the "bw64" to the directory name you chose.
-change "21dea449-bad1-4e79-b67c-554004eb1ab4" to the UUID for your boot device Puppy directory partition
-change "5b3cfc1c-d752-4686-b6af-82c8c4f39b6e" to the UUID for your NVME Puppy directory partition
-save your changes
-reboot and test

Last edited by wizard on Wed May 08, 2024 1:32 pm, edited 1 time in total.

Big pile of OLD computers

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

Multi-boot on MBR computers
Comment: This setup was able to boot Windows 10/11 (from Refind) plus Puppy and MX-Linux (from Grub).

Additional Requirements:
-bootable Clover/Refind USB. Use Unetbootin and create from Clover-v2.4k-4961-X64mod2.iso. The target USB should be formatted fat32 and be blank.
https://sourceforge.net/projects/wizard ... /download

How it works:
The Clover/Refind USB boots and creates a UEFI environment. Refind will then display the MS Windows and Linux (grub) icons.

Install the adapter and NVME drive in the PCIe slot

Partition and format the NVME:
-boot Puppy
-Menu>System>Gparted>Device>Create Partiton Table>GPT
-Partition1 = 100mb, fat32, ESP, set boot flag for grub2
-Partition2 = 50gb (or more), ntfs, win for MS Windows if desired
-Partition3 = 20gb (or more), ext3 or ext4 for Linux

If using MS Windows (only 8, 10, 11 64bit) install it first

Install Puppy:
-boot Puppy
-Menu>Setup>FrugalPup>Puppy
Be sure to make a separate directory for each Puppy install.

Install Grub2:
-boot Puppy
-Menu>Setup>FrugalPup>Boot

Note: you may have to manually edit the grub.cfg, use example grub.cfg for format.

To test:
-boot the Clover/Refind USB, it's slow (can be removed after booting)
-on the first graphics screen, press: Enter
-on the Refind screen you can choose Windows or Linux (starts grub2)
Note: Refind was not able to boot an OS from the internal MBR HDD.

Refind may display icons that have duplicate function or that do nothing, to remove them use your arrow keys to select and then press the Delete key on the keyboard.

Last edited by wizard on Wed May 08, 2024 5:37 pm, edited 5 times in total.

Big pile of OLD computers

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

Multi-boot on UEFI computers
Comment: This setup was able to boot Windows 10/11 (from Refind) plus Puppy and MX-Linux (from Grub)

Additional Requirements:
-bootable Clover/Refind USB. Use Unetbootin and create from duet-refnd-uefi240502.iso. The target USB should be formatted fat32 and be blank.
https://sourceforge.net/projects/wizard ... o/download
-disable: secure boot, TPM and CSM/Legacy boot

How it works:
The Duet/Refind USB boots and creates a UEFI environment. Refind will then display the MS Windows and Linux (grub) icons.

Install the adapter and NVME drive in the PCIe slot

Partition and format the NVME:
-boot Puppy
-Menu>System>Gparted>Device>Create Partiton Table>GPT
-Partition1 = 100mb, fat32, ESP, set boot flag for grub2
-Partition2 = 50gb (or more), ntfs, win for MS Windows if desired
-Partition3 = 20gb (or more), ext3 or ext4 for Linux

If using MS Windows (only 8, 10, 11 64bit) install it first

Install Puppy:
-boot Puppy
-Menu>Setup>FrugalPup>Puppy
Be sure to make a separate directory for each Puppy install.

Install Grub2:
-boot Puppy
-Menu>Setup>FrugalPup>Boot

Note: you may have to manually edit the grub.cfg, use example grub.cfg for format.

To test:
-boot the Duet/Refind USB, it's slow (can be removed after booting)
-on the Refind screen you can choose Windows or Linux (starts grub2)
Note: Refind was able to also boot W10 from the internal UEFI HDD

Last edited by wizard on Wed May 08, 2024 1:43 pm, edited 1 time in total.

Big pile of OLD computers

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

reserved

Big pile of OLD computers

User avatar
rcrsn51
Posts: 1383
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: Using NVME drives on old desktop computers.

Post by rcrsn51 »

When you installed Windows, were there problems getting it onto the nvme drive and not overwriting your main hard drive? Did Windows also put its own bootloader stuff on the nvme?

Typically, the Windows installer would then put an entry in the UEFI firmware boot order list to launch Windows. Did this happen? Did it work?

Or do you still need the Clover/Refind boot USB drive to get things started?

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

Clover-v2.4k-4961-X64mod2.iso available on Sourceforge. This version allows user to remove unwanted Refind icons. See link in post #4

wizard

Big pile of OLD computers

User avatar
mikewalsh
Moderator
Posts: 6135
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 783 times
Been thanked: 1966 times

Re: Using NVME drives on old desktop computers.

Post by mikewalsh »

wizard wrote: Wed May 08, 2024 1:23 pm

...My conclusion, after doing the testing, is most users will do better just using a SATA SSD to gain a speed increase, since they require no special tweaking. As of this writing there is no real cost difference and the NVME speed advantage, particularly for Puppy, is measured in seconds.

Have to agree with this. This HP Pavilion desktop has a single M2 slot (@ 2280) for an nVME drive. I see precious little point in bothering with it, however.

My 1 TB Crucial MX500 SLC SSD runs in the order of 300 MB/s write / 500 MB/s read speeds. With DDR4 & a CPU running at nearly 4 GHz, I'm looking at boot time for most Pups of about 22-25 seconds to arrive at a functioning desktop. Plenty fast enough for me, and I'll often remain with a particular Puppy for several days, suspending overnight.

There's 3 partitions here; one for boot (FAT32), one for the 'kennels', one for all 'portables' (browsers AND other apps).....and 100 GB unallocated. (I'm a big believer in the 10% rule for SSDs, to give the controller chip an easy time of it, despite many saying that over-provisioning is included in the part of NAND that you DON'T see. I'd rather err on the side of caution.) Just because I HAVE "x" amount of storage, I see no need to HAVE to cram it as full of data as possible!

Everything else - Puppy stuff, backups, odds & ends and all other data - lives on the secondary 'data' drive, a 3TB Seagate 'Barracuda' HDD. This is the one that used to be an external USB 3.0 drive when I first bought it; when the HP Pavilion replaced the ancient Compaq Presario, I stripped the enclosure, junked the SATA-to-USB 3.0 'bridge' card and fitted the drive internally instead.

I like Crucial's memory/storage solutions, just as I like Logitech for 'peripheral' hardware.... They just 'work' for me, and they're as reliable as they come. I'm no high-flying, over-achieving 'ubergeek', just an everyday user. :)

Mike. ;)

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

@rcrsn51

When you installed Windows, were there problems getting it onto the nvme drive and not overwriting your main hard drive?

First, I would say it would be advisable to either test using a "test" internal drive or disconnect the internal drive.
My W10 install was made on a MBR computer, booted from USB, and did not affect the internal HDD.

Did Windows also put its own bootloader stuff on the nvme?

Yes

Typically, the Windows installer would then put an entry in the UEFI firmware boot order list to launch Windows. Did this happen? Did it work?

Didn't apply since install was done on a MBR system, see next question.

Or do you still need the Clover/Refind boot USB drive to get things started?

The Clover/Refind USB is only for MBR computers. The Duet/Refind USB is for UEFI computers. In either case the USB must be used for booting since it creates its own UEFI environment to boot from the NVME.

There are more setup iterations of this including installing it to an internal drive and/or calling it from Grub2 that is installed on an internal drive, but I have not tested any of those.

Thanks
wizard

Big pile of OLD computers

User avatar
mouldy
Posts: 590
Joined: Tue Dec 08, 2020 3:53 pm
Has thanked: 39 times
Been thanked: 167 times

Re: Using NVME drives on old desktop computers.

Post by mouldy »

This is interesting to me. IMHO, the nvme can make a difference on a marginal computer. The 256GB nvme + adapter that I replaced m.2 wifi card in Dell Chromebook 3120 made all difference. I had converted it with mrchromebox, then thankfully after installing the nvme+adapter, the mrchromebox bios immediately saw it as a potentially bootable drive. No workarounds needed. Tried windowsXlite micro11, MINT, VOID, and BookwormPup64. Honestly BookwormPup was the only one of the bunch that could play a youtube video without it feeling choppy. All were usable installed on the nvme though. I have had this Dell around a while, it was an experiment sometime back, wanted to try converting a chromebook. But never really used it for anything cause well it was slow and had only 16GB eMMC and no obvious way to expand that internally. Oh you can of course use a usb SSD or whatever but that is clunky for something you are carrying around. And this thing only has two usb ports so you then need a hub into the mix.

My current project is an old Dell D430 with a ZIF drive and legacy bios. So I ever get the adapter I ordered for it, will try methods Wizard has documented in this thread. I currently put BookwormPup on the D430. Its slower than on the converted chromebook and slow enough to avoid using it, though one could if desperate. Wanted to see if the nvme gives it that little bit extra speed to make it pleasant enough to want to use. And yes there is a ZIF to mSATA adapter available cheap, but be nice to keep the ZIF for storage. I dont have anything else that could use a ZIF. Also it has both mpcie WLAN and an unused mpcie WWAN slot. So try that WWAN slot first. This is assuming the clerk in China sends the adapter and not five pieces of bubblegum or something. When they are out of something, they tend to feel free to grab whatever they do have in stock to avoid refund I guess.

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

@mikewalsh

This HP Pavilion desktop has a single M2 slot (@ 2280) for an nVME drive. I see precious little point in bothering with it, however.

On a hardware like yours meant to use a NVME, you would see a noticeable speed up. Even on my old Intel dg31pr motherboard with PCIe v1.1 the NVME Puppy boot time is about 13 seconds (using nocopy). BIg OS's like MS Windows or big Linux distros would be even more pronounced. Still, as before it's just seconds.

Thanks
wizard

Big pile of OLD computers

User avatar
rcrsn51
Posts: 1383
Joined: Sun Aug 23, 2020 4:26 pm
Been thanked: 357 times

Re: Using NVME drives on old desktop computers.

Post by rcrsn51 »

wizard wrote: Wed May 08, 2024 5:19 pm

There are more setup iterations of this including installing it to an internal drive and/or calling it from Grub2 that is installed on an internal drive, but I have not tested any of those.

Thanks. Here is what I was wondering, but have no way of testing:

If you moved the nvme drive to a UEFI machine, could you use efibootmgr to make a working entry for it in the UEFI boot order list, thus eliminating the USB boot device?

Or would you still have the same problem? If the system BIOS/UEFI is not aware of the nvme drive as a bootable device, you can't force it into using the drive.

User avatar
mikewalsh
Moderator
Posts: 6135
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 783 times
Been thanked: 1966 times

Re: Using NVME drives on old desktop computers.

Post by mikewalsh »

wizard wrote: Wed May 08, 2024 5:35 pm

@mikewalsh

This HP Pavilion desktop has a single M2 slot (@ 2280) for an nVME drive. I see precious little point in bothering with it, however.

On a hardware like yours meant to use a NVME, you would see a noticeable speed up. Even on my old Intel dg31pr motherboard with PCIe v1.1 the NVME Puppy boot time is about 13 seconds (using nocopy). BIg OS's like MS Windows or big Linux distros would be even more pronounced. Still, as before it's just seconds.

Thanks
wizard

This is just it, Wiz. TBH, I've reached the time of life where it's just not 'mission-critical' for me to save time everywhere I can any longer. I'm semi-retired, my life has slowed down, I've slowed down.....a matter of seconds simply doesn't make a s***'s-worth of difference these days, y'know? :D

Sure, it's a nice idea, but frankly it holds very little interest for me. My 'kennels' are 'mature' now; polishing & tweaking are mainly what I do with 'em these days. Rather than experimenting all the time, I now more or less just simply USE my Pups. Of course, I'm still just as interested in packaging/creating apps & utilities as I ever was, but since these are nearly always 'portable' now, installing/adding new stuff poses very little in the way of upheavals like it once might have done....

Mike. ;)

User avatar
wizard
Posts: 1955
Joined: Sun Aug 09, 2020 7:50 pm
Has thanked: 2610 times
Been thanked: 675 times

Re: Using NVME drives on old desktop computers.

Post by wizard »

@rcrsn51

Or would you still have the same problem? If the system BIOS/UEFI is not aware of the nvme drive as a bootable device, you can't force it into using the drive.

Yes, without booting from the Duet/Refind USB the NVME would not boot. One of the iterations is to edit the Bios/Setup code and inject the NVME driver, then do a bios update. Not for the faint of heart since you can "brick" the computer.

Thanks
wizard

Big pile of OLD computers

Post Reply

Return to “Install”