PlanktoScope / PlanktoScope

Open and Affordable Quantitative Imaging Platform
https://www.planktoscope.org
Creative Commons Attribution Share Alike 4.0 International
63 stars 23 forks source link

Deploy the backend segmenter with forklift rather than the distro setup scripts #352

Closed ethanjli closed 8 months ago

ethanjli commented 8 months ago

This PR makes resolves #326 by bumping the pallet-standard pallet to incorporate the changes made in https://github.com/PlanktoScope/pallet-standard/pull/7 (and in turn, https://github.com/PlanktoScope/device-pkgs/pull/7 and https://github.com/PlanktoScope/device-backend/pull/17 ).

ethanjli commented 8 months ago

After the above commit, the adafruithat SD card image is 1.57 GB - so moving the segmenter into the container has not increased the SD card image size 🥳 (assuming I don't need to make any more major changes on this PR)

ethanjli commented 8 months ago

So it turns out that I did need to add one more apt package which had been ambiently installed in the host os: libatomic1

The size of the Docker container image before adding that package was 898 MB (mostly because of scipy, opencv, numpy, pandas, and scikit-image). The size of the Docker container image after adding that package was still 898 MB. So libatomic1 doesn't make an impact.

ethanjli commented 8 months ago

Hmm, for some reason now the SD card image is 2 GB. I'll need to do some troubleshooting to figure out what changed.

ethanjli commented 8 months ago

I built the SD card image again and this time it was 1.46 GB...is there some nondeterminism happening, or did I just mess up last night? I guess I'll need to repeat the image build process a few times to see what's happening. And maybe also compare the two images to see what's different.

ethanjli commented 8 months ago

I built the SD card image again and this time it was 1.43 GB (i.e. ~30 MB smaller)!! So there does seem to be some nondeterminism - very weird.

I tried booting the image and making an SD card image from it, and then it was 1.5 GB which is much smaller than 2 GB! So I have no idea how the previous attempt resulted in a 2 GB image.

But it seems like this PR actually does not significantly increase the SD card image size, which is good enough to merge this PR (together with testing in which everything seemed to work without obvious regressions).