I'm feeling thick. :\
I want to align my partitions and file system to the sectors in physical FLASH inside the SSD. Although the buffer and controller will change the way the data is written, I think its prudent and shouldn't be difficult. I'm not doing this for anything other than prolonging the life of the SSD.
So,
Hardware
Intel X25-V 40GB SSD Setup.
I dont know the FLASH devices in the SSD but I would presume that they're 4K sectors. Some Intel FLASH devices Ive dealt with have a number of smaller sectors at the front of the device and some at the end but I cant find any info on this.
According to the BIOS/FreeBSD:
Sector Alignment:
Q What I dont understand is where this aligns to the internal map. For example, 40015987200/4096 = 9769528.125. Hmm? Is this because the memory map isnt all 4K sectors or that the BIOS/FreeBSD is reporting a geometry that is compatible with legacy hardware/software?
What am I aligning:
Revising the inner workings of a harddrive...
Q All the other guides seem to suggest aligning to 63 sector. If 512B per sector, why would aligning to 32256B (1 sector short of 32K) help?
The only way I can see it helping is keeping the partition boundary's to 4K and then making the file system blocks 4K. As the smallest unit and aligned to 4K, no spanning of blocks simply because of alignment issues would occur.
Implementing..
fdisk -- PC slice table maintenance utility.
"Sector 0 of the disk must contain boot code, a slice table and magic number."
I presume this should be track 0 as FreeBSD sets aside 63 sectors (0-62) at the start?
So to align I would either have to push out the slice to start at the 64th sector, Or just align the paritions.
bsdlabel -- read and write BSD label.
"The first partition should start at offset 16, because the first 16 sectors are reserved for metadata."
Which is fine, as 16 is 2 * 4K blocks (8*512=4096).
Q. So, taking into account the offset of the slice, If I started the root partition on the 17th sector (1 sector to offset +1 from the 63rd sector slice + 16 sectors for metadata)?
And to finish, newfs with 4K sectors and 32K blocks (maintaining the 8:1 ratio).
Obviously Im misunderstanding much of this....?
:\
Is it worth having a look at gpart?
Links:
http://forums.freebsd.org/showthread.php?t=7011
http://www.ocztechnologyforum.com/f...h-stuttering-and-increases-drive-working-life.
http://www.freebsd.org/cgi/man.cgi?query=newfs&sektion=8
http://www.freebsd.org/cgi/man.cgi?query=bsdlabel&sektion=8
http://www.freebsd.org/cgi/man.cgi?query=fdisk&sektion=8
I want to align my partitions and file system to the sectors in physical FLASH inside the SSD. Although the buffer and controller will change the way the data is written, I think its prudent and shouldn't be difficult. I'm not doing this for anything other than prolonging the life of the SSD.
So,
Hardware
Intel X25-V 40GB SSD Setup.
I dont know the FLASH devices in the SSD but I would presume that they're 4K sectors. Some Intel FLASH devices Ive dealt with have a number of smaller sectors at the front of the device and some at the end but I cant find any info on this.
According to the BIOS/FreeBSD:
- 4865 (tracks on all discs) * 255 (sides of the discs) * 63 (cake slices of the discs) = 78,156,225.
- 78,156,225 sectors where 1 sector is 512 Bytes = 40,015,987,200B.
Sector Alignment:
Q What I dont understand is where this aligns to the internal map. For example, 40015987200/4096 = 9769528.125. Hmm? Is this because the memory map isnt all 4K sectors or that the BIOS/FreeBSD is reporting a geometry that is compatible with legacy hardware/software?
What am I aligning:
Revising the inner workings of a harddrive...
- Platters are the physical spinning discs.
- Heads are the physical access to read/write the sides of the discs.
- Tracks are a circular strip on the disc to read/write data from.
- A cylinder is a collection of all the tracks across the platters/discs.
- Sectors are portions of the discs (cake slices) that span the tracks.
- Block is the term used to describe a sector or many sectors.
Q All the other guides seem to suggest aligning to 63 sector. If 512B per sector, why would aligning to 32256B (1 sector short of 32K) help?
The only way I can see it helping is keeping the partition boundary's to 4K and then making the file system blocks 4K. As the smallest unit and aligned to 4K, no spanning of blocks simply because of alignment issues would occur.
Implementing..
fdisk -- PC slice table maintenance utility.
"Sector 0 of the disk must contain boot code, a slice table and magic number."
I presume this should be track 0 as FreeBSD sets aside 63 sectors (0-62) at the start?
So to align I would either have to push out the slice to start at the 64th sector, Or just align the paritions.
bsdlabel -- read and write BSD label.
"The first partition should start at offset 16, because the first 16 sectors are reserved for metadata."
Which is fine, as 16 is 2 * 4K blocks (8*512=4096).
Q. So, taking into account the offset of the slice, If I started the root partition on the 17th sector (1 sector to offset +1 from the 63rd sector slice + 16 sectors for metadata)?
And to finish, newfs with 4K sectors and 32K blocks (maintaining the 8:1 ratio).
Obviously Im misunderstanding much of this....?
:\
Is it worth having a look at gpart?
Links:
http://forums.freebsd.org/showthread.php?t=7011
http://www.ocztechnologyforum.com/f...h-stuttering-and-increases-drive-working-life.
http://www.freebsd.org/cgi/man.cgi?query=newfs&sektion=8
http://www.freebsd.org/cgi/man.cgi?query=bsdlabel&sektion=8
http://www.freebsd.org/cgi/man.cgi?query=fdisk&sektion=8