Bob Friesenhahn wrote:
On Fri, 21 May 2010, Don wrote:
You could literally split a sata cable and add in some capacitors for
just the cost of the caps themselves. The issue there is whether the
caps would present too large a current drain on initial charge up- If
they do then you need to add in charge controllers and you've got the
same problems as with a LiPo battery- although without the shorter
service life.
Electricity does run both directions down a wire and the capacitor
would look like a short circuit to the supply when it is first turned
on. You would need some circuitry which delays applying power to the
drive before the capacitor is sufficiently charged, and some circuitry
which shuts off the flow of energy back into the power supply when the
power supply shuts off (could be a silicon diode if you don't mind the
0.7 V drop).
Bob
You can also use an appropriately wired field effect transistor (FET) /
MOSFET of sufficient current carrying capacity as a one-way valve
(diode) that has minimal voltage drop.
More:
http://electronicdesign.com/article/power/fet-supplies-low-voltage-reverse-polarity-protecti.aspx
http://www.electro-tech-online.com/general-electronics-chat/32118-using-mosfet-diode-replacement.html
In regard to how long do you need to continue supplying power...that
comes down to how long does the SSD wait before flushing cache to
flash. If you can identify the maximum write cache flush interval, and
size the battery or capacitor to exceed that maximum interval, you
should be okay. The maximum write cache flush interval is determined by
a timer that says something like "okay, we've waited 5 seconds for
additional data to arrive to be written. None has arrived in the last 5
seconds, so we're going to write what we already have to better ensure
data integrity, even though it is suboptimal from a absolute performance
perspective." In conventional terms of filling city buses...the bus
leaves when it is full of people, or 15 minutes has passed since the
last bus left.
Does anyone know if there is a way to directly or indirectly measure the
write caching flush interval? I know cache sizes can be found via
performance testing, but what about write intervals?
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss