OT: Apropos defragging and SSDs.

Given that what the commands are that the SSD sees are 'gimme (track, sector) and there are no longer such things anyway, its fairly clear that there is an operating system operating inside the SSD that is presenting what it really is in a digestible from to the host computer, and apart from TRIM, which says 'trim(track,sector) as I don't need that any more', there is very little the host can do to optimise it *at all*.

In fact tests done seem to suggest that on most SSDS simply erasing

*everything* and adding back the data, is the only thing that makes a slight (10%) difference, and that is most likely to be a matter of sub optimal algorithms in the SSD itself anyway.

An SSD is actually a complete computer system. It has memory, IO, 'disk' and a CPU and runs embedded code.

How it performs is largely down to how its designed and very little down to how the host utilises it.

Also, nearly everything I have read that has actual numbers in it, suggests that for personal workstations or laptops (not servers) the disk will outlast its usefulness before it gets f***ed from too many writes.

Frankly SSDS have given my personal computers the sort of performance boost that I haven't seen since we went from 8 bit to 16 bit...

For booting off and keeping programs on (as opposed to keeping data) there are the dogs knees. Get one.

Reply to
The Natural Philosopher
Loading thread data ...
[30 lines snipped]

formatting link

Reply to
Huge

The do get fragmented, but not in the same way MS Windows does, nor as much. Microsoft?s NTFS file system allocates more ?buffer? free space around files on the drive, but, as any Windows user can tell you, NTFS file systems still become fragmented over time. Linux journaled file systems OTOH, like ext3 & ext4 etc, allocates files in a more intelligent way. Instead of placing multiple files near each other on the hard disk, Linux file systems scatter different files all over the disk, leaving a large amount of free space between them. When a file is edited and needs to grow, there?s usually plenty of free space for the file to grow into. If fragmentation does occur, the file system will attempt to move the files around to reduce fragmentation in normal use, without the need for a defragmentation utility.

See -

formatting link
Or
formatting link

Reply to
Martin Barclay

Which is perhaps one of the reasons *nixs make ideal server systems? Although I don't know whether MS server OSs have to be defragged occasionally or not. If they do, I suppose it's more downtime for the operator.

Reply to
Martin Barclay

Interesting information.

Based on your info (above) I may just do that. Now to see if I have a few spare pennies lying about...

Reply to
Martin Barclay

One of the many, many, reasons. At my last place of employ, Windows Server was a deprecated technology which required special approval before it could be used.

Reply to
Huge

Why downtime? Windows can defrag in the background but its not worth it unless the disks are close to full and you can't fit a bigger disk.

Reply to
dennis

It's also worth noting that SGI's XFS that is one of the heavy duty filesystems available on linux has a command:

xfs_fsr - "filesystem reorganizer for XFS"

XFS is an extent based filesystem, rather than a block based one - and one xfs_fsr's jobs is to combine all the little extents into bigger ones, ditto the free list.

Reply to
Tim Watts

The underlying device cannot arbitrarily decide for itself what following page it should cache, it has to be told.

If you (the SSD controller) says to it, give me block 23 page 120, it *can* automatically pre-cache page 121 so that it is ready when you come back to say give me block 23 page 121.

but if you know that the next page that you want will be block 24 page 17, you have to tell it this and it has to operate special logic to cope with that

NAND devices have been designed for cheapness (of cost per bit), They are not designed to include comprehensive logic to achieve complicated functions in a timely fashion, thus this "I want a different page as the next page" is not a cheap operation. This is where the delay is.

tim

Reply to
tim...

Why not?

The SSD has the power to know what order it gives out free sectors, it can remember this order and hence have its own concept of contiguousness. This might not be able to defrag an existing file but it could ensure the free sectors were all contiguous when new files were allocated. I would hope some one who had considered the problem for more than the five minutes I just devoted to it could do an even better job.

Actually I think the software mapping physical memory is already very complex, eg this software is required to ensure an even spreading of the number of times each bit get written so that the SSD wears evenly.

Reply to
Nick

Yep I agree I've at least five. Including an 8 year old one now living in my router. Using one in a router was supposed to be a no no due to constant logging but it has been in there for 6 months without problem.

Reply to
Nick

As it happens the reason I went to Win7 from XP was because it includes automatic trim support.

I don't need to bring up a bash prompt and remember some arcane spell to make it happen, it just does. I'd assumed modern Linux was the same.

Andy

Reply to
Vir Campestris

Same here on a couple of laptops.

It does indeed, but if you actually *like* getting involved with your OS, where is the fun in that!

I would like to think it was but I don't assume anything anymore where Linux is concerned.

One thing I do know are the chances are I can get a Windows machine working with all my (and often obscure / external) hardware, whereas if a Linux machine doesn't detect all my stuff automagically, the chances are I won't be able to fix it (and know of no other people ITRW who could).

Cheers, T i m

Reply to
T i m

I use a different flavour of 'UNIX', but mostly I *can* fix it. And I have fun doing it!

Reply to
Bob Eager

And of course that's fine if you can (or want to), but doing so is generally really really different to doing the same on Windows.

As soon as you have to drop to the CLI then you ('most people who otherwise might give stuff a go via the GUI) have lost the ability to 'explore' to a potential solution. Typing (and especially copy-typing (as opposed to copying and pasting)) isn't easy if what you are typing isn't:

Already familiar to you.

In plain English.

Easy to remember (because of both of the above), especially if you are suffering from a memory loss, dyslexia and really only interested in the destination and not the journey).

And that last bit is key to the issues normal seen between the Linux nerds and 'ordinary users' who may like to try Linux but don't want to make a hobby out of it or worse, a new lifestyle.

'Not being interested' labels you 'a moron' in the eyes of the fanatics (and unfortunately something we are currently suffering the consequences of the world around).

'If you aren't with us you are against us' ... being 'agnostic' isn't acceptable to some.

Cheers, T i m

Reply to
T i m

As I| have discovered, it more or less is. If I had dome a fresh install onto my SSD instead of copying and existing one onto it, it might have done it too, but as it happens I have simply had to patch a little more of the mount table configuration file than I had already had to do to get it to boot off its new SSD.

Reply to
The Natural Philosopher

Yep. The whole point of Linux is I can generally within a n hour fix it, discover that its not worth the trouble, or discover that it cant be fixed at all, Windows I never knew whether it could be sorted out and mostly it couldn't.

Reply to
The Natural Philosopher

So again, it seems that for you there is little difference re the final outcome between Windows or Linux.

And therein lies the problem, *for you*.

However, given say an issue with Windows and one with Linux, *most people* would be more likely to get a positive solution with Windows than Linux (including if they had to take it somewhere to get it fixed).

For most people, when discussing the pros and cons of something they normally do so in regard to how well that may represent the masses or status quo.

After many years exposure to all sorts of technical stuff (in my lifelong role in 'IT support') I know very well that for most people who have little interest in 'computers' and 'coding' are / will be likely to get on better with solutions they can test and explore in a graphical form, than one that requires typing non intuitive strings of text into a terminal.

So, what may help in the future would be if you make it clear that anything you say about Windows is *just* your (potentially very) biased opinion, especially considering how much of it doesn't affect or reflect the target audience.

Cheers, T i m

Reply to
T i m

think of a way to do it then

I can't.

(other than completely randomly which doesn't serve a useful purpose)

but that is irrelevant

The primary device likes to read contiguous blocks. No amount of mapping by a controller is going to change that.

storage devices only get fragmented from frequent use.

It's all very well trying to have a system of making sure that all of your free block are contiguous, but you can't do that if someone else is making the decisions about what files to delete.

Not unless you repack after every delete - that would also solve the wear levelling problem.

But would cause an awful lot of thrashing.

I've never seen wear levelling work at a bit level

that is news to me (and would be a flipping nightmare to implement needing as much storage to store the data as you have useful memory)

tim

Reply to
tim...

The point I think you are missing is that with an SSD the concept of contiguous is arbitrary. The SSD will have at least one level of indirection (it may be called an address translation layer) between the logical page id and the physical page memory.

The property you are referring to as contiguous is a total ordering of the logical memory addresses, not an ordering of physical memory. This translation layer will be in terms of blocks or pages which each consist of thousands of bytes. So in order to to reassign the order of a block or page it is only necessary to change a few byte in the translation layer.

Reply to
Nick

HomeOwnersHub website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.