libera/#clasp - IRC Chatlog
Search
14:34:54
drmeister
Can you guys remind me later how we work with PR's now? I shouldn't be pushing directly.
14:35:26
drmeister
I fell back on old habits. I should have a branch and push to that and then submit a PR.
14:36:57
yitzi
If it is just a minor change like fix some print statements or tweak the build system we have been pushing straight to main. If it involves anything that might cause an ansi test or regression test to fail we usually open a PR at least to let the tests run.
14:37:54
yitzi
It it is and idea that is a work in progress we usually do a draft PR and then change to a normal PR if we are serious about merging.
14:45:17
drmeister
I can also go into the apptainer and try things but I can't build jupyterlab within the apptainer because the file system is read only.
15:26:23
drmeister
That's done. When I run with `apptainer shell --writable cando.sif` the jupyter executables are not in the path - I don't know where they are.
15:26:49
drmeister
So I run with `apptainer shell cando.sif` and now I'm evaluating `jupyter-lab build` and it is working away.
15:27:58
drmeister
Which one do you want, this one that worked or the one that broke when I built the apptainer?
15:30:48
drmeister
So to be clear. I built the apptainer with --sandbox - it generated the error above when doing `jupyter-lab build`
15:33:06
drmeister
building without and with --sandbox generates the same result. The difference is with --sandbox I'm able to run the apptainer afterwards and evaluate `jupyter-lab build` and it works interactively - but not when it was building.
16:23:16
yitzi
I did end up needing --broken-stdlib .... once I merge llvm15 that won't be needed anymore
17:26:20
drmeister
Let me get an apptainer build working first with llvm14 - I had to restart it because I had the --sandbox thing on.
17:29:57
yitzi
I had to add an extra argument "TargetFunctionName" to createFunction, btw. It appears this is intended for trampolines where you want to include the name of the target function.
17:32:52
yitzi
I have done a lot of rebasing on llvm15. So delete your local branch before you pull from origin.
17:36:52
drmeister
I'm hooking my scoring objects together with the atom-tree building objects today. Then I can build molecules and score them quickly. I will also be able to add new scoring functions.
17:38:31
drmeister
With the llvm15 branch we can't continue to support llvm14 - right? It's a leap to llvm15.
17:39:11
drmeister
We have never been able to support multiple versions of llvm - so that's just the way it is if so.
17:40:09
drmeister
It sounds like using static constructors to run startup code may still not be possible because it may require something that package manager llvm distributions do not ship with.
17:40:33
yitzi
if you have a local llvm15 branch in your clone then delete it before you do `git fetch && git checkout llvm15`
17:41:35
yitzi
We could support multiple llvm versions....it would just make things a bit more complex and since all our platforms have llvm15 I don't know why would keep llvm14 around
17:41:54
drmeister
The thing that static constructors to run startup code requires is the OrcV2 runtime. Lang says that he doesn't know if package manager versions of llvm provide that yet.
17:44:28
yitzi
I've built on Zeus with no config.sexp file. Specifically no :broken-stdlib, :llvm-config, etc
17:46:50
drmeister
I don't want to get too distracted from my molecule building work at the moment. I've made tremendous progress in the past months to get molecule building worked out with your guyzes help.
17:47:23
drmeister
Now I need to get scoring hooked to it and then set up a Monte Carlo searcher and we can start designing molecules.
17:48:46
Bike
"static constructors to run startup code" - is that applicable to the clasp image, or just fasls
17:48:58
drmeister
I made a bit of an error by putting a Vector3 position field in some nodes. I should have put an index into a vector of x,y,z coordinates like everything else that scoring depends on.
17:49:19
drmeister
Then pass the vector of x,y,z coordinates to the functions that calculate positions.
17:49:59
drmeister
Bike: It would be applicable to both the clasp image and fasls because they both use faso files.
17:51:11
drmeister
Currently a faso file is a concatenated vector of operating system object files. Each object file exports a single symbol `clasp_startup_xxx` that is unique to a group of object files numbered 0...XXX.
17:51:38
Bike
one thing i'm hoping for with the new fasls is to be able to avoid the static constructors, since i know they've been kind of a pain in various aspects. but that's less important if we still need them for the image
17:51:56
drmeister
A fasp file can concatentate groups of object files but we have to maintain the ObjectId numbering that goes: 0...AAA, 0...BBB, 0...CCC
17:53:05
drmeister
Everytime the core__load_faso function sees an ObjectId of 0 it creates a new jitDylib and the `clasp_startup_<ObjectId>` names can start over.
17:54:13
drmeister
I've seen some problems with `clasp_startup_<ObjectId>` not being unique - but I haven't figured out why or how that could be happening.
17:54:35
drmeister
It would be better if we could do away with this entirely - then we wouldn't have to be so careful coordinating the startup symbol names.
17:54:56
drmeister
Static constructors could solve the problem. I've know they could for a long time.
17:55:23
drmeister
But the llvm support was there for a time and then it disappeared with OrcV2 and now it appears to be coming back in a robust way.
17:56:31
drmeister
That video I posted above should explain more about how OrcV2 works and what the OrcV2 runtime is and maybe that will make it clearer how it's going to work.
17:57:49
drmeister
Also, OrcV2 supports generating code for remote, non-local computers/processes. I don't understand that. We do everything in process.
17:58:40
drmeister
I struggle to understand that aspect of OrcV2 because my brain is full and I get impatient hearing about things I don't think I care about.
17:59:36
drmeister
So I have to sit down and calmly watch that video and take notes and learn what's up with OrcV2 and try to shush the voices in my head screaming at me that I have a 100 other things to do.
18:00:36
drmeister
Bike: I'm going to ThirdLaw today to mess around with the fluorescence microscope to figure out how to scan the plate efficiently.
18:02:00
Bike
ok. i decided not to come in until i get those wireless APs. if i have to wait for everyone to leave to do rewiring it will be difficult to do maintenance anyway
18:05:37
drmeister
I went to the maker space at the Temple Library on Thursday but there was a temporary person in there and I didn't meet with the manager.
18:06:22
drmeister
The Temple website is confusing - I can't be sure I have the website for the maker space I visited.
18:44:48
drmeister
/home/meister/.local/bin/scando: error while loading shared libraries: libfmt.so.8: cannot open shared object file: No such file or directory
18:52:05
drmeister
This worked before - and I'm using this to launch jupyterlab `RemoteCommand module add singularity; XDG_RUNTIME_DIR=/home/meister/run singularity run work/cando.sif jupyter-lab --no-browser`
18:56:11
drmeister
It must have gotten these when I tried `cando-user-install` within `singularity shell cando.sif`
18:57:29
drmeister
I ran cando-user-install INSIDE the `singularity shell cando.sif` - did that wreak havoc on my environment?
18:58:45
yitzi
I dunno. I think the stuff built by cando-user-install during the creation of the container isn't getting seen. Looking at my build
19:02:21
drmeister
This is a hack - but if I change at kernel file to use "/home/cando/.local/bin/scando" - it works.
19:03:53
yitzi
Yes, that is fine for now...but it kills your local jupyter kernels. There is a kernel in /home/cando/.local/share/jupyter/kernels/cando that it should be using
19:10:26
drmeister
I have no local jupyter kernels on that machine - nothing works outside of the apptainer.
19:12:04
yitzi
Then add mv /home/cando/.local/share/jupyter/kernels/cando /home/cando/miniconda3/share/jupyter/kernels to the cando.def after the cando-user-install command.
19:13:40
drmeister
I don't think I want to run the scando executable - it doesn't see the local quicklisp on owlsnest.
19:15:57
drmeister
It should - but I don't want that one because I want to use the owlsnest:quicklisp/local-projects/topology system - is that possible? I was doing it a few days ago.
19:16:26
drmeister
I'm doing development. I don't want to have to build the apptainer every time I make a change to this topology system.
20:03:13
drmeister
Now "-t", "c", that appears to work - but you supplanted that with "--base" - correct?
20:08:09
drmeister
I tried running cando-user-install inside of the apptainer but it fails because the filesystem is not writable.
20:15:20
drmeister
I think the ngl-cgl issues might have been a quicklisp compilation collision when two notebooks were starting at once.
20:30:55
drmeister
I ran cando beforehand and did (ql-dist:install-dist "http://thirdlaw.tech/quickclasp/quickclasp.txt")