Feature #8681
Make it easy to run the test suite with a ramdisk mounted on its temporary directory
Start date:
2015-01-12
Due date:
% Done:
100%
Description
- add a
--temp-dir-ramdisk [SIZE]
option - the default value for
SIZE
would be whatever is needed by a full run of the test suite - if/when/once the required ramdisk size grows larger than what we can allocate on our isotesterN VMs, we’ll add swap and let the kernel deal with spreading data among the memory and disk; we’ll probably want to add a couple SSDs in RAID-0 to host these swap volumes, by the way
Subtasks
Related issues
Related to Tails - |
Resolved | 2016-02-27 | |
Related to Tails - |
Resolved |
History
#1 Updated by intrigeri 2015-01-13 16:29:57
- Status changed from Confirmed to In Progress
- % Done changed from 0 to 10
Actually, I’m investigating another solution, based on trusting Linux’ disk write caching instead of tmpfs + swap.
#2 Updated by intrigeri 2015-01-15 04:57:43
- Status changed from In Progress to Rejected
- Assignee deleted (
intrigeri) - % Done changed from 10 to 100
Seems to work:
- https://munin.riseup.net/static/dynazoom.html?cgiurl_graph=/munin-cgi/munin-cgi-graph&plugin_name=boum.org/lizard.tails.boum.org/libvirt_blkstat&size_x=800&size_y=400&start_epoch=1421172722&stop_epoch=1421280722
- https://munin.riseup.net/static/dynazoom.html?cgiurl_graph=/munin-cgi/munin-cgi-graph&plugin_name=boum.org/lizard.tails.boum.org/diskstats_throughput/lizard_isotester1_tmp&size_x=800&size_y=400&start_epoch=1421172722&stop_epoch=1421280722
=> during a test suite run, given enough RAM is allocated, we’re writing to disk at >10MB/s during less than 15 minutes. So we don’t need to manage tmpfs, their size, mounting/unmounting etc. People should just allocate as much RAM as they can, and Linux should not write to disk unless needed.
When we start using /tmp/TailsToaster
more intensively, we’ll get a better idea of how it’s going, but IMO the decision I’m taking here is already optimized for this future use case, as opposed to the current one, so I’m not worried. Worst case, we might need to tweak /proc/sys/vm/dirty_*
.
#3 Updated by intrigeri 2016-02-27 14:46:21
- related to
Feature #11175: Decrease I/O load created by isotesters on lizard added
#4 Updated by intrigeri 2019-09-24 09:59:09
- related to
Bug #17088: Test suite became unreliable on Jenkins: OOM kills QEMU, OpenJDK memory allocation failure aborts the test suite run added