-
Notifications
You must be signed in to change notification settings - Fork 5
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
test decorator for cpu and cuda #75
Conversation
I'll respond to your message here :)
Didn't realise this!
What would prevent us from releasing a version 0.1 of a libtilt API and putting it on pypi? Maybe add a short text on what the project intention is and a docs page with api. But this is a bit clashing with the individual packages.
I wanted to do some work on this mostly for fun and learn something new, and have a short distraction from writing. I thought updating the tests and making it run on GPU might get this ready for a first version. Would be a lot of fun to hack something together, but still little time for me atm. But perhaps we could have a quick call or smh to share some ideas? |
Decided to add this in. |
Would it be possible to make the tests check for differentiability for deep-learning? |
this is really wondeful @McHaillet - great work 🙂
I agree this is one path forwards and did consider it myself, the questions I was asking myself when thinking about it were:
I ended up deciding that small standalone packages would be better on both fronts - the thing that will bring them together and make it feel coherent/cohesive is a nice teamtomo.org which points at their associated docs (which don't exist yet 🤣 ) I'll merge this anyway and will absolutely be adding this to all of those packages. I would love the differentiability tests too but don't know how I would do that immediately, do you have ideas? Does this make sense to you? Would you like to work together on getting the libtilt functionality into teamtomo as isolated packages? This feels like the equivalent of the v0.1 API you were imagining and it would be great to have someone else excited about the effort 🙂 |
I am not immediately convinced (but I trust you have good ideas on the topic) maybe you could help me see your points? My main two concerns: 1 For a developer that wants to depend on this library, it is also not a huge codebase, i.e. the dependency is fully overshadowed by pytorch. Rather having to add all these individual dependencies seems more tedious. 2
It would be difficult to first have to go to another package to fix something for CTF's that is due to an issue in frequency grids. I can see it imposes a hurdle to develop a big library, but it also is a big hurdle if you have to move through different packages and learn how these components tie in together. I can see the benefit of some splitting but would still be more inclined to keep it one place. If you think splitting is really needed, perhaps some components can still be kept together. |
I could see though that if we can for example ensure that the grid-utils API (https://github.com/alisterburt/torch-grid-utils/tree/main) remains consistent, it makes it easier to have it as a dependency. |
Nope! but it should be possible right? You just need to check that the gradients can be calculated from input to output. I don't think its possible as a decorator though. |
For sure down to work together on it! However, my contract is almost finished and I don't know yet where I will be after. For now definitely happy to think along :) |
Preface: maybe a bit void seeing your other message now, but was fun to mess around with still
Overview of changes:
BTW also noticed that 'projection' and 'rescaling' are lacking unittests.
Closes #72