Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initialize repo and add simple memory tests #1

Merged
merged 53 commits into from
Feb 22, 2024

Conversation

d33bs
Copy link
Member

@d33bs d33bs commented Jan 8, 2024

This PR adds content to help initialize the repo along with simple examples of testing memory allocation reference counts (where nothing unusual is expected). It builds a scaffold where additional tests and further specification could be provided. As mentioned in the README.md, the work is largely inspired by and may help inform progress for cytomining/CytoTable#75 (in addition to other areas). As a background, I opted for containerized testing of these circumstances to help isolate what I noticed as differences between MacOS Apple Silicon and other OS's when it came to memory management in Python.

Wondering aloud: perhaps the word test is too overloaded and moving to experiment for memory testing would be better?

Thank you in advance for any thoughts and feedback you may have! Please don't hesitate to let me know if you have any questions.

CC @chrisroederucdenver

@d33bs
Copy link
Member Author

d33bs commented Jan 22, 2024

Thank you so much @chrisroederucdenver for the review and thoughts! I've added a number of changes to this work based on your comments here and our various discussions. I've moved this to use a test-driven approach within the repo as you suggested (thanks for this, fantastic idea!).

I plan to expand on the existing tests with additional future PR's focused on specific aspects (mostly focusing on building a scaffold / proof-of-concept for now). Mostly this is to limit the scope of additions given the number of possible variables at play (Python version, interpreter version, OS, memory observation tools used, etc).

Your comments also made me feel that further documentation was warranted surrounding memory and how Python manages memory. I've moved this content to CU-DBMI/set-website#28 which will result in a blog post surrounding the topic.

More specific comments:

  • Getting started: I added greater documentation surrounding how to get started with concerns to this repo's use of Python.
  • More docs on tests: I added some documentation covering this and outlining how test documentation could function for this repo.
  • Missing hashbangs: generally these are considered optional for Python, esp. with concerns to packages (they're mostly used in relationship to scripts instead of modules/packages). My own style tends to avoid the use of these as I seek to avoid maintaining an additional line of code per file which may void the practice of DRY.

d33bs added a commit to CU-DBMI/set-website that referenced this pull request Jan 31, 2024
This PR adds a new blog post covering Python memory management and
troubleshooting. The work is inspired from content initially developed
in CU-DBMI/demo-python-memory-reference-accounting#1 , which is a
test-driven investigation of Python memory. My hope here is to share
information on the same topics while allowing for greater flexibility to
explore memory implications within
CU-DBMI/demo-python-memory-reference-accounting.

As part of this work I also added a "tip-of-the-month" includes block to
adjust to newsletter wording and a less frequent post cadence. We could
also drop the nomenclature here as well to provide more flexibility.

Thank you in advance for any feedback and input you may have!

CC @chrisroederucdenver

Relates to work in cytomining/CytoTable#75

---------

Co-authored-by: Vincent Rubinetti <[email protected]>
Co-authored-by: Faisal Alquaddoomi <[email protected]>
Co-authored-by: Chris Roeder CUAnschutz <[email protected]>
@d33bs
Copy link
Member Author

d33bs commented Feb 22, 2024

Thanks again @chrisroederucdenver, appreciate your thoughts on this throughout! Merging this for now with an eye towards further improvements in the future.

@d33bs d33bs merged commit 43d8adc into CU-DBMI:main Feb 22, 2024
2 checks passed
@d33bs d33bs deleted the build-demonstrations branch February 22, 2024 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants