icecube / skymap_scanner

A distributed system that performs a likelihood scan of event directions for IceCube real-time alerts using CPU cluster(s) and queue-based message passing.
5 stars 2 forks source link

Inclusion of spline tables in container #166

Open mlincett opened 1 year ago

mlincett commented 1 year ago

Currently, only the spline tables used by millipede_original are included in the Skymap Scanner docker image and I believe there are a few points that should be sorted out:

ric-evans commented 1 year ago

see https://github.com/icecube/skymap_scanner/issues/148#issuecomment-1496459268

Preferably, I'd like to see a no-CVMFS pattern for all our use cases if possible.

mlincett commented 1 year ago

see #148 (comment)

Preferably, I'd like to see a no-CVMFS pattern for all our use cases if possible.

I guess by "no-CVFMS" you mean an image not including data from CVMFS? Because the current "no-CVFMS" Dockerfile is the opposite: a container that does not need CVMFS access at runtime.

So I guess we would be fetching the spline data at runtime and mount their location as a volume, right? I agree with making the "code-only" image the default (also because it is then trivial to add data on top of that if there are special requirements).

ric-evans commented 1 year ago

Right, I believe we agree--a dataless image.

We either mount as a volume or have the container's process fetch the data and write within the container. Then following processes would look inside the container instead of refetching.

mlincett commented 1 year ago

Side note: since we are going to clean up the Dockerfile, there is a bunch of commented out import statements for pieces of realtime that are no longer required and can be safely removed.

mlincett commented 1 year ago

After a brief chat with @ric-evans , maybe we could reconsider IceTray filestagers on the client side.

It seems to be the path of least resistance.

mlincett commented 1 year ago

Now that #174 is merged I suggest we make the upstream IceTray image "dataless", what do you think @dsschult ?

dsschult commented 1 year ago

Now that #174 is merged I suggest we make the upstream IceTray image "dataless", what do you think @dsschult ?

I agree.

https://github.com/WIPACrepo/docker-icecube-icetray/pull/10

That look good?

mlincett commented 1 year ago

Now that #174 is merged I suggest we make the upstream IceTray image "dataless", what do you think @dsschult ?

I agree.

WIPACrepo/docker-icecube-icetray#10

That look good?

Seems fine to me!

dsschult commented 1 year ago

Just checking, but how do we handle the base gcd lookups? Some similar principle? Or do we even do those anymore?

mlincett commented 1 year ago

Just checking, but how do we handle the base gcd lookups? Some similar principle? Or do we even do those anymore?

I have not touched that part anymore but the DataStager was designed with this also in mind. For now we still expect them to be inside the container, but the staging can/will be implemented (are GCD files on prod-exe?)

dsschult commented 1 year ago

Just checking, but how do we handle the base gcd lookups? Some similar principle? Or do we even do those anymore?

I have not touched that part anymore but the DataStager was designed with this also in mind. For now we still expect them to be inside the container, but the staging can/will be implemented (are GCD files on prod-exe?)

One helping thing is #150 , and then we don't need the base gcds in the client container, just at the server. That has CVMFS available for most scenarios.

I don't think the base GCD files are on prod-exe, as they are in /data/user/followup/baseline_gcds/, but that could be fixed fairly easily for a fallback stager.