Daily Weblog 1/30/17

My project works - as of today, I was able to test it in its entirety, despite losing a Pi to water damage (it has since been replaced - thanks, Dr. Bill!). However, I do not have enough memory on the device to actually run the program in its entirety. Of the 1 GB, around 500-600MB are taken up by running processes (I will try to cut down on these at runtime), while the current system of 5 faces takes up almost all of the remaining memory - when I add more people, up to the maximum class size of 20-30 people, I will almost certainly run out of memory. By using only 5 faces to construct models, however, I have been able to reduce the overhead that adding each user creates. I have also modified my Python script to close the database connection when not in use, and I am considering removing the Threading part entirely, relying only on a series of subprocesses to manage my RFID connection. If I am still left without enough memory, I may have to switch devices (the Odroid, apparently, has 16GB of RAM - far more than enough), or port my code to a compiled language, like C++, to save on the interpreter overhead costs that are inherent to using Python.

Comments