© J.C. Kessels 2009
MyDefrag Forum
May 26, 2013, 06:11:50 am
Welcome,
Guest
. Please
login
or
register
.
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
News
:
Home
Help
Search
Login
Register
MyDefrag Forum
>
MyDefrag v4 Forum
>
Scripts, and other contributions
>
How does FastFill() handle fragmented files
Pages: [
1
]
2
« previous
next »
Print
Author
Topic: How does FastFill() handle fragmented files (Read 2060 times)
ScorpionGTfx
JkDefrag Senior
Posts: 32
How does FastFill() handle fragmented files
«
on:
June 06, 2010, 07:04:51 pm »
If I've a file fragmented in, for example, 100 parts, and under all these parts I've 2 gaps that together are big enough to hold that file but divided only by unmovable data, how does
FastFill()
act? It will place that file in these 2 gaps, resulting in a file fragmented only in 2 parts? Or to reach this result is mandatory to execute the
Defragment()
action first?
Thanks
Logged
jeroen
Administrator
JkDefrag Hero
Posts: 7155
Re: How does FastFill() handle fragmented files
«
Reply #1 on:
June 06, 2010, 10:07:44 pm »
FastFill does not do wrap-around.
Logged
ScorpionGTfx
JkDefrag Senior
Posts: 32
Re: How does FastFill() handle fragmented files
«
Reply #2 on:
June 08, 2010, 09:47:08 pm »
But isn't MyDefrag designed with the Wrap-around fragmentation in mind? Fastfill is often used because it's called by weekly and daily scripts, and it might have some problems in compacting files if there are many unmovable block in the drive (for example like the
Microsoft Crypto folders
). Instead, SortByXXX doesn't seem to have these problems, but isn't used so often either (by concept, one time a month). It looks like the daily and weekly scripts don't follow too much the concept of Wrap-around fragmentation. It might preserve the already present wrapped around files, but nothing more. And maybe not even that: if you're using FastFill(WithShuffling), it can destroy wrapped around positioning because if it wants to enlarge a gap, and the next file is a wrapped around one, it will move that file away, compacting it. Then, when it will move it back, this file will not be wrapped around anymore...
Logged
jeroen
Administrator
JkDefrag Hero
Posts: 7155
Re: How does FastFill() handle fragmented files
«
Reply #3 on:
June 09, 2010, 09:59:59 am »
Quote from: ScorpionGTfx on June 08, 2010, 09:47:08 pm
But isn't MyDefrag designed with the Wrap-around fragmentation in mind?
Not exactly, no. FastFill was there long before I introduced the wrap-around concept. Perhaps in the future I will change FastFill so it will span it's scope across unmovable data, but at the moment it only looks at 1 gap at a time.
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: How does FastFill() handle fragmented files
«
Reply #4 on:
June 09, 2010, 10:00:45 am »
But please as an option. I don't want FastFill to wrap files around.
«
Last Edit: June 09, 2010, 10:24:25 am by BloodySword
»
Logged
Greetings from Germany!
Kasuha
JkDefrag Hero
Posts: 595
Re: How does FastFill() handle fragmented files
«
Reply #5 on:
June 09, 2010, 10:49:11 pm »
I don't think we need FastFill to be able to use the wrap-around concept. It might help in some cases and might make things worse in other cases - at least until the whole concept of wrap-around fragmentation is revisited.
What FastFill could handle better are fragmented files - like, normally fragmented, not wrapped around something. In my opinion it should be able (again as an option) to use individual file fragments for filling gaps instead of whole files.
At present, if someone has a partition made of database files, these files can be defragmented using defragment(chunksize) command leaving them fragmeted but in reasonably sized fragments - but at present there is no command that would be able to reduce gaps in between these chunks.
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: How does FastFill() handle fragmented files
«
Reply #6 on:
June 10, 2010, 07:38:08 am »
FastFill() should stay as is. But it should always try to use files from the end of the zone.
Using fragments to fill gaps is a bad idea in most of the cases. But ForcedFill() will do.
Logged
Greetings from Germany!
Kasuha
JkDefrag Hero
Posts: 595
Re: How does FastFill() handle fragmented files
«
Reply #7 on:
June 10, 2010, 11:14:29 am »
Quote from: BloodySword on June 10, 2010, 07:38:08 am
Using fragments to fill gaps is a bad idea in most of the cases.
I disagree. If the file is fragmented, there is probably a reason for it (e.g. because the zone was defragmented using defragment(chunksize) command). And in such case it is irrelevant where within the zone individual fragments are placed.
I am not asking for FastFill() to fragment files. I am just asking to have option for it to handle already existing fragments instead of whole files as basic blocks used in the filling process.
Quote from: BloodySword on June 10, 2010, 07:38:08 am
But ForcedFill() will do.
Using ForcedFill() is a bad idea in most of the cases because it makes fragmentation worse.
Logged
ScorpionGTfx
JkDefrag Senior
Posts: 32
Re: How does FastFill() handle fragmented files
«
Reply #8 on:
June 10, 2010, 06:19:35 pm »
I think MyDefrag should follow only one concept for defragmentation. You want to go with Wrap-around fragmentation? Ok, all the FileAction commands should work considering Wrap-around fragmentation. You want to go without Wrap-around fragmentation? Then all the FileAction commands shouldn't wrap around files, even commands like SortByXXX. In other words, all the commands should respect the active philosophy ... and I think this is quite important, because right now there are commands in MyDefrag that don't consider Wrap-around fragmentation even if the flag of WrapAroundFragmentation is set to true.
Quote from: BloodySword on June 09, 2010, 10:00:45 am
But please as an option. I don't want FastFill to wrap files around.
FastFill should follow the active settings (for example if
IgnoreWrapAroundFragmentation
is true then it should wrap around, otherwise should act like now).
Quote from: Kasuha on June 09, 2010, 10:49:11 pm
I don't think we need FastFill to be able to use the wrap-around concept. It might help in some cases and might make things worse in other cases - at least until the whole concept of wrap-around fragmentation is revisited.
And what are these cases where it might make things worse?
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: How does FastFill() handle fragmented files
«
Reply #9 on:
June 10, 2010, 06:23:54 pm »
No! No! No! Why should it be a benefit if you can
not
define the behaviour each FileAction session? I don't understand your point...
Logged
Greetings from Germany!
ScorpionGTfx
JkDefrag Senior
Posts: 32
Re: How does FastFill() handle fragmented files
«
Reply #10 on:
June 10, 2010, 07:13:58 pm »
Actually, in the current version of MyDefrag, the
Defragment()
command works in this way ... there is no
"Defragment(WrapAround)"
right now.
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: How does FastFill() handle fragmented files
«
Reply #11 on:
June 10, 2010, 07:46:55 pm »
Defragment will never Wrap arount, because of it'S concept. It searches a position to move the whole file to and might move files away.
Logged
Greetings from Germany!
ScorpionGTfx
JkDefrag Senior
Posts: 32
Re: How does FastFill() handle fragmented files
«
Reply #12 on:
June 10, 2010, 09:55:04 pm »
It will not defragment a file fragmented due to wrap around if IgnoreWrapAroundFragmentation is True. So it respect the concept of Wrap-around fragmentation.
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: How does FastFill() handle fragmented files
«
Reply #13 on:
June 11, 2010, 07:39:05 am »
Yes that's true. But the recognition should be improved a bit.
«
Last Edit: June 11, 2010, 09:26:07 am by BloodySword
»
Logged
Greetings from Germany!
Kasuha
JkDefrag Hero
Posts: 595
Re: How does FastFill() handle fragmented files
«
Reply #14 on:
June 11, 2010, 09:24:40 am »
Quote from: ScorpionGTfx on June 10, 2010, 06:19:35 pm
Quote from: Kasuha on June 09, 2010, 10:49:11 pm
I don't think we need FastFill to be able to use the wrap-around concept. It might help in some cases and might make things worse in other cases - at least until the whole concept of wrap-around fragmentation is revisited.
And what are these cases where it might make things worse?
You still need to learn some of MyDefrag's problems.
WrapAround function wraps moved files around files which are unmovable during the defragmentation run which applies generally to any temporary file the system decides to use.
On my computer, trying to optimize a zone using a SortByName command leads to approximately 30% files being marked as fragmented right after they were placed at their position. The first following run of "daily optimization" moves them all twice - once when defragmenting them, once when filling them back. I really don't think it's a good idea to have this happening
every
daily defragmentation.
Logged
Pages: [
1
]
2
Print
« previous
next »
Jump to:
Please select a destination:
-----------------------------
MyDefrag v4 Forum
-----------------------------
=> Announcements
=> Questions and help
=> Bugs and problems
=> Requests for new features
=> Scripts, and other contributions
-----------------------------
JkDefrag v3 Forum
-----------------------------
=> Announcements
=> Questions and help
=> Bugs and problems
=> Requests for new features
=> Programming with the library
Loading...