Overv / vramfs

VRAM based file system for Linux
1.26k stars 65 forks source link

File permissions lost when copying giles or when unpacking tarballs #19

Open ThomasTheGerman opened 4 years ago

ThomasTheGerman commented 4 years ago

The vramfs is mounted to ~/.cache/vramfs

$ ls -l test.sh
-rwxr-xr-x 1 user user 32 14. Feb 11:31 test.sh*
$ cp test.sh ~/.cache/vramfs
$ ls -l ~/.cache/vramfs/
-rw-r--r-- 1 user user 32 14. Feb 12:03 test.sh
$ mkdir ~/.cache/testdir
$ cp test.sh ~/.cache/testdir
-rwxr-xr-x 1 user user 32 14. Feb 12:05 test.sh*

cp -p preserves the permissions, but why do they get lost in the first place? I wanted to do some testing on how fast a vramfs would be as a build directory compared to an SSD and a tmpfs in real RAM.

I'm using an RX480 with 8 GiB GDDR5, on an up-to-date arch linux using the opencl-amdgpu-pro-orca opencl driver.

Unrelated testing results you might find interesting, and I don't know where else to put them: Interestingly, I'm getting really good write speed and random write IOPS on the drive, but the read speed isn't great (around 1GiB/s using 128k blocks) and especially the random read IOPS is atrocious, worse than my 6 year old sata SSD.

command to test:

fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randread

Result: 4k blocksize read: IOPS=19.2k, bw=74.9MiB/s 128k blocksize read: IOPS=4354, BW=544MiB/s 4k blocksize write: IOPS=73.5k, BW=287MiB/s 128k blocksize write: IOPS=12.2k, BW=1521MiB/s

and on my SSD: 4k blocksize read: IOPS=75.4k, BW=294MiB/s 128k blocksize read: IOPS=4145, BW=518MiB/s 4k blocksize write: IOPS=6184, BW=24.2MiB/s 128k blocksize write: IOPS=609, BW=76.2MiB/s

Using the basic dd test I also get worse read than write speed.