* Can major re-organization activities of the UBIfs be "deliberately provoked"?
@ 2011-07-21 13:33 Atlant Schmidt
2011-07-22 8:34 ` Artem Bityutskiy
0 siblings, 1 reply; 4+ messages in thread
From: Atlant Schmidt @ 2011-07-21 13:33 UTC (permalink / raw)
To: 'linux-mtd@lists.infradead.org'
Folks:
We're using the UBIfs with our realtime equipment. We've
noticed a behavior where, every so often, the flush-ubifs
thread demands very, very large amounts of CPU time, blocking
all of our other processes that use the Linux time-sliced
scheduler. These bursts come at arbitrary intervals but
commonly last ten to fifteen seconds.
Naturally, these bursts come at exceedingly inconvenient
times ;-).
I *ASSUME* these bursts occur when the UBI file system has
decided that it has to do some major Flash housekeeping;
these bursts are associated with our application doing a
lot of writing but *ARE NOT* associated with the display
of any UBI/MTD error messages. (If my assumption is wrong,
please feel free to correct me!)
So three questions:
1. Has this bursty behavior changed for the better
in more-recent versions of the MTD/UBI/UBIfs code?
(We're probably running pretty old versions of each.)
2. Are there any tuning parameters that would let us
spread this work out more smoothly (that is, in a
less-bursty fashion)?
3. Are there any APIs that would let us deliberately
provoke this work at times that would be more-convenient
for the rest of our application (such as when we're
booting up or shutting down)?
Atlant
This e-mail and the information, including any attachments, it contains are intended to be a confidential communication only to the person or entity to whom it is addressed and may contain information that is privileged. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please immediately notify the sender and destroy the original message.
Thank you.
Please consider the environment before printing this email.
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: Can major re-organization activities of the UBIfs be "deliberately provoked"?
2011-07-21 13:33 Can major re-organization activities of the UBIfs be "deliberately provoked"? Atlant Schmidt
@ 2011-07-22 8:34 ` Artem Bityutskiy
2011-07-22 10:50 ` Atlant Schmidt
0 siblings, 1 reply; 4+ messages in thread
From: Artem Bityutskiy @ 2011-07-22 8:34 UTC (permalink / raw)
To: Atlant Schmidt; +Cc: 'linux-mtd@lists.infradead.org'
On Thu, 2011-07-21 at 09:33 -0400, Atlant Schmidt wrote:
> Folks:
>
> We're using the UBIfs with our realtime equipment. We've
> noticed a behavior where, every so often, the flush-ubifs
> thread demands very, very large amounts of CPU time, blocking
> all of our other processes that use the Linux time-sliced
> scheduler. These bursts come at arbitrary intervals but
> commonly last ten to fifteen seconds.
If the bursts are probably dues to write-back which is initiated by VFS.
When UBIFS is doing write-back it needs to compress data, it may need to
do GC if there is not space.
First - check if the bursts are indeed about write-back - change the
period of write-back and see. Or type sync and see the utilization. Then
you can play with VFS knobs and lessen the write-back intervals
in /proc.
--
Best Regards,
Artem Bityutskiy
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: Can major re-organization activities of the UBIfs be "deliberately provoked"?
2011-07-22 8:34 ` Artem Bityutskiy
@ 2011-07-22 10:50 ` Atlant Schmidt
2011-07-22 10:59 ` Artem Bityutskiy
0 siblings, 1 reply; 4+ messages in thread
From: Atlant Schmidt @ 2011-07-22 10:50 UTC (permalink / raw)
To: 'dedekind1@gmail.com'; +Cc: 'linux-mtd@lists.infradead.org'
Artem:
Thanks! We've already tuned the Linux page cache
to be quite a lot less bursty (for example, by
decreasing the dirty_expire_centisecs from 3000
(30 seconds) to 500 (5 seconds); this substantially
removed the burstiness associated with the VFS
(and the associated pagecache flushing tasks).
Now, though, we assume we're up against garbage
collection in the UBIfs so we wonder if there's
a way to make *THAT* operation either:
1. Less bursty (perhaps by making it run more
often but have less work to do at each run),
or
2. Externally schedulable so we could cause it
to occur when we have idle CPU time and its
running won't affect the realtime behavior
of the rest of our system.
Can either of those things be done?
Atlant
-----Original Message-----
From: Artem Bityutskiy [mailto:dedekind1@gmail.com]
Sent: Friday, July 22, 2011 04:34
To: Atlant Schmidt
Cc: 'linux-mtd@lists.infradead.org'
Subject: Re: Can major re-organization activities of the UBIfs be "deliberately provoked"?
On Thu, 2011-07-21 at 09:33 -0400, Atlant Schmidt wrote:
> Folks:
>
> We're using the UBIfs with our realtime equipment. We've
> noticed a behavior where, every so often, the flush-ubifs
> thread demands very, very large amounts of CPU time, blocking
> all of our other processes that use the Linux time-sliced
> scheduler. These bursts come at arbitrary intervals but
> commonly last ten to fifteen seconds.
If the bursts are probably dues to write-back which is initiated by VFS.
When UBIFS is doing write-back it needs to compress data, it may need to
do GC if there is not space.
First - check if the bursts are indeed about write-back - change the
period of write-back and see. Or type sync and see the utilization. Then
you can play with VFS knobs and lessen the write-back intervals
in /proc.
--
Best Regards,
Artem Bityutskiy
This e-mail and the information, including any attachments, it contains are intended to be a confidential communication only to the person or entity to whom it is addressed and may contain information that is privileged. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please immediately notify the sender and destroy the original message.
Thank you.
Please consider the environment before printing this email.
^ permalink raw reply [flat|nested] 4+ messages in thread* RE: Can major re-organization activities of the UBIfs be "deliberately provoked"?
2011-07-22 10:50 ` Atlant Schmidt
@ 2011-07-22 10:59 ` Artem Bityutskiy
0 siblings, 0 replies; 4+ messages in thread
From: Artem Bityutskiy @ 2011-07-22 10:59 UTC (permalink / raw)
To: Atlant Schmidt; +Cc: 'linux-mtd@lists.infradead.org'
On Fri, 2011-07-22 at 06:50 -0400, Atlant Schmidt wrote:
> Artem:
>
> Thanks! We've already tuned the Linux page cache
> to be quite a lot less bursty (for example, by
> decreasing the dirty_expire_centisecs from 3000
> (30 seconds) to 500 (5 seconds); this substantially
> removed the burstiness associated with the VFS
> (and the associated pagecache flushing tasks).
>
> Now, though, we assume we're up against garbage
> collection in the UBIfs so we wonder if there's
> a way to make *THAT* operation either:
>
> 1. Less bursty (perhaps by making it run more
> often but have less work to do at each run),
> or
>
> 2. Externally schedulable so we could cause it
> to occur when we have idle CPU time and its
> running won't affect the realtime behavior
> of the rest of our system.
>
> Can either of those things be done?
Yes, I think both can be done. Someone just needs to do this :-)
--
Best Regards,
Artem Bityutskiy
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2011-07-22 10:57 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-21 13:33 Can major re-organization activities of the UBIfs be "deliberately provoked"? Atlant Schmidt
2011-07-22 8:34 ` Artem Bityutskiy
2011-07-22 10:50 ` Atlant Schmidt
2011-07-22 10:59 ` Artem Bityutskiy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox