Guest75977 has quit [Remote host closed the connection]
mort___ has joined #mirage
pie_ has joined #mirage
<ehirdoy1>
My hvt program dies with "out of memory" eventually when I configure hvt --kv_ro=direct with 46MB storage. Does kv_ro=direct use ramdisk?
<hannes>
it uses "crunch". (you can take a look in lib/mirage_key.ml where the kv_ro key is defined, which than leads to the `Direct constructor, and that one is used in mirage_impl_fs.ml at the bottom, calling into Mirage_impl_kv.direct_kv_ro, which in turn chooses on the backend, and uses crunch in all cases apart from the unix backend.
<hannes>
how much memory did you pass to your unikernel? it may, as discussed the other day, overflow into stack -- similar to xen
<ehirdoy1>
512MB as default for solo5?
<ehirdoy1>
I've fixed stack overflow with shrinking data. Now OoO is another issue I encounter
<ehirdoy1>
s/OoO/OOM/g
<ehirdoy1>
Is crunch with hvt a ramdisk?
<hannes>
"a ramdisk" <- i've trouble to understand what you mean. as mentioned yesterday, I consider crunch to be good for data < 1MB. it may be worth to raise the question "how do i embed YYY MB of data into a solo5-hvt unikernel" on the mailing list, maybe others have good ideas about this.
<ehirdoy1>
I meant with ramdisk, all content of it is deployed on RAM at boot. I'll try to ask after narrowing down this OOM issue. Thanks!!
<hannes>
yes, this is how crunch works: at _build time_ it translates data into OCaml code and embeds it into the binary --> the binary will be at least as big as the data
<hannes>
and then this binary will be loaded into memory, containing the data you crunch'ed.
<ehirdoy1>
I verified, "Unix+kv_ro=direct" reads a file at runtime from disk, but "hvt+kv_ro=direct" doesn't as you explained...:(
mort___ has quit [Quit: Leaving.]
<hannes>
ehirdoy1: well, it can't -- in the hvt case, the unikernel does not have any access to the host file system
<ehirdoy1>
hannes, what about with disk image, skelton/block although it doesn't use a filesystem on it?
<ehirdoy1>
iirc, issue/325 tells that solo5 disk throughput is too slow because of small 512B block size. But it's ok for the case that there are many small files and it reads occationally but with a large disk?
<ehirdoy1>
IOW, can I ask for, is there any mirage example for any files on disk image?
wendar has joined #mirage
pie_ has quit [Ping timeout: 250 seconds]
mort___ has joined #mirage
mort___ has quit [Client Quit]
pie_ has joined #mirage
jnavila has joined #mirage
pie_ has quit [Ping timeout: 245 seconds]
djs55 has joined #mirage
djs55 has quit [Quit: Leaving.]
djs55 has joined #mirage
djs55 has quit [Client Quit]
pie_ has joined #mirage
mort___ has joined #mirage
pie_ has quit [Ping timeout: 255 seconds]
mort___ has quit [Quit: Leaving.]
jnavila has quit [Remote host closed the connection]