Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
81 user(s) are online (46 user(s) are browsing Forums)

Members: 1
Guests: 80

FlynnTheAvatar, more...

Support us!

Headlines

 
  Register To Post  

« 1 (2) 3 4 5 ... 13 »
Re: NVMe device driver
Just popping in
Just popping in


See User information
@geennaam

Are you going to publish the source code of your driver as well?

AmigaOne X5000 @ 2GHz / 4GB RAM / Radeon RX 550 / AmigaOS 4.1 Final Edition / MorphOS 3.17
Amiga1200 / Blizzard 1230 IV PiStorm32-lite / AmigaOS 3.9
Go to top
Re: NVMe device driver
Just popping in
Just popping in


See User information
@geennaam

I have ordered a NVMe and PCI-E card and already entered the device into the kicklayout in advance.
Without the NVMe is installed, the device seems to stop booting. Would be nice to add something that it
continues to boot without NVME. I had to boot from CD to change the kicklayout back.
Or at least write a warning in the readme.

Unless it is only a problem for me?

Thank you for the device. Is there an address for donations?

Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@TearsOfMe

Thanks for the feedback. Will solve that issue in the next release.


Edited by geennaam on 2023/3/27 11:13:24
Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@Primax

If you want open source drivers then you should check out Linux or maybe AROS. According to user o1i on amiga-news.de, there should be something in development for AROS.

Go to top
Re: NVMe device driver
Home away from home
Home away from home


See User information
@geennaam
As always, top quality stuff from you, thanks! If only we have cloned you 3–4 times and make clones works on the kernel and whole OS, then probably the progress and improvements of whole OS will be much faster, better and what is more important in the really necessary corners which just no one touch.

Anyway, i can't test it right now, but is it really like this ? I mean, is it really 2-3 times faster in everyday operations as well as your benchmarks shows ?

For x5000 we at least have amigaboot.of on the SD card already, and probably, it should be “only” matter to update amigaboot.of file, so it will know new devices and be able to boot from, but as you point out correctly : never :)

But we can put of course kickstarts also to the same SDcard, and starting from, and then, all the partitions can be NVMe ones, the only disadvantage that real kickstart modules will be on SD card (means ok for casual users, and harder for anyone who plays with modules often)

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@kas1e

Be careful what you wish for. Cloning me 4 times means also 4 times more cynical comments and complaints about missing documentation.

Large speedups are only gained when your daily usage is copying large files.

Speed difference in copying my 800MB sys: contents between ram and SSD is about ~35% faster compared to SATA at the moment.

I haven't done any speed comparisons on how fast games and applications start. So I do not know if there's really much of a difference in that area.

My primary goal was to make sure that we can use NVMe once SATA becomes rare.

Ok, maybe my real primary goal was to make the X5000 PCIe x4 slot useful for anything (Don't use Linux or Morphos so I don't need a second gfx card). Even bought a beautiful new housing to be able to rotate my gfx card out of the box. And this was inspired by your video about your new SAM460.

Go to top
Re: NVMe device driver
Home away from home
Home away from home


See User information
@geennaam
Will try then at first to test it as additional device attached, so to simple check how things starts, etc. Every second matter :)

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: NVMe device driver
Just can't stay away
Just can't stay away


See User information
@geennaam
Quote:
Q: Yessss!! I will get >Gigabyte/seconds transfer speeds, right?
A: Erm, no. NVMe is designed for multithreaded and streaming access. Streaming as in: It takes some overhead to setup a transfer but then we get this train moving.
You will most likely use NGFS. This filesystem is single threaded and limits the maximum transfer internally to 32kbyte-128kb. The overhead needed to start those small transfers will kill speed in a single threaded environment.
The 128kb limit should be fixed in NGFS, even for SATA that's way too small.


Quote:
Q: I don't believe you, I will play in media toolbox with blocksize, buffers, Maxtransfer and the Mask. Or?
A: Nope, these settings are completely ignored by PPC filesystems.
Buffers and blocksize are still used, at least by FFS and SFS. Using a lot of buffers, for example 5000 or 10000, can make a big difference, for example reading directories, or the bitmap when the file system is searching for appropriate space for new files, especially if diskcache.library isn't used.
All those tiny, single block reads(*) will cause a lot of slowdowns, on PATA/SATA/SCSI HDs as well, but maybe even more on NVMe.
Buffers are only used for file system meta data blocks (directoires, bitmaps, file extents, etc.), they aren't used for the data blocks of files (except on FFS DOSTypes DOS\0, DOS\2 and DOS\4, i.e. OFS).

With FFS files are much faster when using lager block sizes, but directories are slower (each directory entry uses an own block) and it needs more space on the disk.
SFS is slower when using block sizes larger than 512 bytes.


*)Even without using diskcache.library there is still a read-ahead cache inside of SFS, but at least the (configurable with SFSConfig) defaults, and IIRC the maximum supported as well, are much smaller caches and cache line sizes.


Quote:
Now don't start using SFS/02 just yet because NGFS is a lot faster with small files.
NGFS should always be faster, but especially with a lot of small operations since it's using the new AmigaOS 4.x file system API.
SFS is still using the old AmigaOS 1.x-3.x packet based API. The AmigaOS 4.x/PPC version of SFS tries to avoid the task switching overhead of it, by executing the file system code inside the task of the application using dos.library/file system functions instead of the file system task, but even that way the old packet API is much more overhead.

Go to top
Re: NVMe device driver
Not too shy to talk
Not too shy to talk


See User information
@geennaamQuote:
geennaam wrote:@daveyw

And why would you be redundant?


My employer has disestablished my job so come May I will be unemployed. The redundancy package is very nice (about 3/4s of a year's salary), but its quite scary to be 50 years old and unemployed, especially since tech companies seem hell-bent on downsizing.

Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@daveyw

Yes, I can imagine.
I don't know the situation on your country but it seems a trend for big tech only.
And 50 in the tech business is still young. Lot's of companies want the experience that you simply cannot learn at school.

Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@TearsOfMe
Quote:
Without the NVMe is installed, the device seems to stop booting.


Found the issue. A small sequence error in my cleanup routine.

Go to top
Re: NVMe device driver
Home away from home
Home away from home


See User information
@geennaam

thanks it's awesome to have new drivers for new hardware for OS4.1

_______________________________
c64-dual sids, A1000, A1200-060@50, A4000-CSMKIII
Catweasel MK4+= Amazing
! My Master Miggies-Amiga1000 & AmigaONE X1000 !
mancave-ramblings

Go to top
Re: NVMe device driver
Just popping in
Just popping in


See User information
@geennaam

>Don't use the adapter cards with multiple M.2 slots because they will not work.

Is this limitation absolute, or is it possible to make some workaround later? I was thinking about the possibility to use one slot for AmigaOS, and another for Linux, without needing to occupy two pcie slots.

Go to top
Re: NVMe device driver
Not too shy to talk
Not too shy to talk


See User information
@GregorQuote:
Gregor wrote:@geennaam

>Don't use the adapter cards with multiple M.2 slots because they will not work.

Is this limitation absolute, or is it possible to make some workaround later? I was thinking about the possibility to use one slot for AmigaOS, and another for Linux, without needing to occupy two pcie slots.


My (now only) theoretical opinion:
- most of adapters with two or four M.2 PCie NVMe not works, becouse it needs motherboard with PCIe bifurcation ( splitting ) support.
( X1000 and X5000 theoretically can support this, both CPU has free PCIe roots, but it needs changes in firmware = i.e. no support in real )

- adapters with two M.2 ( one PCIe and one SATA M.2 ) will work, becouse fist M.2 use PCIe directly and second M.2 should be connected to SATA adapter - it sounds crazy, but such adapters are very common

- adapters with packet swith chip ( like Asmedia, ASM28xx ) "can" works. I have one in my shopping list and I will post here experiences.

But:
- switch allways causes latency
- NVME need PCIe x4 for full speed
so it can make sense on X1000 with x8 slot only - I want test to split x8 slot to: x4 graphics card for linux and x4 for NVMe

Anyway, if it will works, I post here also speeds for comparison.

AmigaOS3: Amiga 1200
AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000
MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@sailor @gregor

I don't know about the X1000 but the X5000 certainly doesn't support bifurcation. And you can also not freely assign transceiver lanes to PCIe controllers. You can only choose from predefined configurations. But remember that except the x16 slot, all other slots are behind a PCIe switch. So you don't want to change anything for the P5020 anyways. The X5000 PCIe switch might be more flexible. But I have to look into that.

There are dual NVMe cards available with an embedded PCIe switch. These cards come in two flavors as far as I can tell. A cheap 8x card with just a three port x1 switch (why oh why?). But you have to physically modify the X5000 PCIe connector to fit them.
And an expensive x4 card with a three port x4 switch.
The second one is on my radar. But at EUR 129 not very cheap compared to the price of the NVMe drives themselves.

For now my driver supports only 1 unit. This will change soonish after I have a second NVMe SSD in my X5k.

I must say that I am a bit surprised that there is already the need for using more than one NVMe SSD. Maybe next time I should start a survey first.

It is not possible to boot from NVMe at the moment, so the dual NVMe use case for amigaos and Linux is unclear to me.

@sailor
Currently my driver cannot saturate a PCIe2.0 x1 slot anyways so I wouldn't be too concerned about the need for a x4 slot. Unless you have a X1000. Because those lanes run at only PCIe1.0 speed.

Go to top
Re: NVMe device driver
Just popping in
Just popping in


See User information
@geennaamQuote:
It is not possible to boot from NVMe at the moment, so the dual NVMe use case for amigaos and Linux is unclear to me.


Christian Zigotzky (the maintainer of Amiga Linux kernels) has announced he will integrate the NVMe drivers into his kernels next week. After that, you will be able to boot Linux from NVMe units, by loading first the kernel from x5000's bootSD. I use currently the same trick for booting Linux from a 6G SSD disk connected to a Sata3 controller board.

Go to top
Re: NVMe device driver
Not too shy to talk
Not too shy to talk


See User information
@geennaam
yes, currently ( and maybe means forever ) bifurcation not supported on X1000 and X5000.

PA6T-1682M in X1000 has 8x PCIe root inside ( used five in our config), in that case it is fully configurable via firmware - so theoretically bifurcation is possible. Yes, I know the firware rights problem, and also support for Polaris in firmware has bigger sense and priority.
P5020 in X5000 has four PCIe roots ( uses two ), but in this case I am not sure if it is fully configurable via firmware, or there should be some hardware. As you said, It cannot be freely configurable.

All it means - forgot the bifurcation.

I agree there is no real need for more than one NVME. From my side it is only pure interest what is possible. To have one in Amiga is really great thing!
Also, if I succseed to divide x8 slot to two x4, I have usecase for this, but no two NVMEs.
And don't worry about booting, it should be easily workarounded.

So if I found working PCIe switch for this purpose, I will note it here.


Edited by sailor on 2023/3/29 6:55:35
AmigaOS3: Amiga 1200
AmigaOS4: Micro A1-C, AmigaOne XE, Pegasos II, Sam440ep, Sam440ep-flex, AmigaOne X1000
MorphOS: Efika 5200b, Pegasos I, Pegasos II, Powerbook, Mac Mini, iMac, Powermac Quad
Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@Gregor

Interesting. I've read that the SAM460 was capable of booting Linux and Amigaos4 from microSD. But I didn't know that the X5000 was capable of doing to same for at least Linux. Would be nice if it can also boot the Amigaos4 kernel with modules from microSD.

Go to top
Re: NVMe device driver
Quite a regular
Quite a regular


See User information
@sailor

There are a lot of PCIe expanders with switch available. Just not cheap.


Edited by geennaam on 2023/3/28 22:35:11
Go to top
Re: NVMe device driver
Just popping in
Just popping in


See User information
@geennaam
Quote:
Interesting. I've read that the SAM460 was capable of booting Linux and Amigaos4 from microSD. But I didn't know that the X5000 was capable of doing to same for at least Linux. Would be nice if it can also boot the Amigaos4 kernel with modules from microSD.

Here is the recipe how to dot it:
https://forum.hyperion-entertainment.c ... wtopic.php?p=41033#p41033

AmigaOS kernel developers have said it should be possible to load also Kickstart from BootSD. I hope your new driver will motivate them to make the needed changes in U-Boot .

Go to top

  Register To Post
« 1 (2) 3 4 5 ... 13 »

 




Currently Active Users Viewing This Thread: 1 ( 0 members and 1 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2023 The XOOPS Project