Skip to content

Comments

Add fan_dev_shm_enable signal to Odin#1127

Open
jacob720 wants to merge 4 commits intobluesky:mainfrom
jacob720:add_pv_to_odin_device
Open

Add fan_dev_shm_enable signal to Odin#1127
jacob720 wants to merge 4 commits intobluesky:mainfrom
jacob720:add_pv_to_odin_device

Conversation

@jacob720
Copy link

@jacob720 jacob720 commented Nov 7, 2025

Needed for DiamondLightSource/mx-bluesky#1076
We are currently migrating to the ophyd-async Eiger, and trying to use this in Hyperion. We need to be able to turn on dev/shm streaming for GPU analysis during xray centring, and turn it off to clear the memory, this PR adds the relevant PV to the Odin device.

@jacob720 jacob720 marked this pull request as draft November 7, 2025 11:27
@jacob720 jacob720 marked this pull request as ready for review November 7, 2025 11:57
@jacob720 jacob720 marked this pull request as draft November 7, 2025 14:12
@jacob720 jacob720 force-pushed the add_pv_to_odin_device branch from beb6e65 to 3a2a85a Compare November 10, 2025 10:59
@jacob720
Copy link
Author

Hi, @GDYendell is this signal in the IOC?

@jacob720 jacob720 marked this pull request as ready for review November 11, 2025 10:56
@GDYendell
Copy link
Contributor

Yep that looks right. For I03 it is BL03I-EA-EIGER-01:OD:FAN:DevShmCache

@jacob720
Copy link
Author

jacob720 commented Nov 12, 2025

Great, thanks

@DominicOram
Copy link
Contributor

The B21 SAXS detector does not have this PV(though curiously the WAXS one does):

(.venv) [ffv81422@ws455 dodal]$ caget BL21B-EA-EIGER-01:OD:FAN:DevShmCache
Channel connect timed out: 'BL21B-EA-EIGER-01:OD:FAN:DevShmCache' not found.
(.venv) [ffv81422@ws455 dodal]$ caget BL21B-EA-EIGER-02:OD:FAN:DevShmCache
BL21B-EA-EIGER-02:OD:FAN:DevShmCache No

@GDYendell, I know this PV was always meant to be temporary but I don't think we're in a position where we can remove it soon? Can we add it to the B21 SAXS detector instead?

FYI @RJCD-Diamond

@RJCD-Diamond
Copy link
Contributor

The B21 SAXS detector does not have this PV(though curiously the WAXS one does):

(.venv) [ffv81422@ws455 dodal]$ caget BL21B-EA-EIGER-01:OD:FAN:DevShmCache
Channel connect timed out: 'BL21B-EA-EIGER-01:OD:FAN:DevShmCache' not found.
(.venv) [ffv81422@ws455 dodal]$ caget BL21B-EA-EIGER-02:OD:FAN:DevShmCache
BL21B-EA-EIGER-02:OD:FAN:DevShmCache No

@GDYendell, I know this PV was always meant to be temporary but I don't think we're in a position where we can remove it soon? Can we add it to the B21 SAXS detector instead?

FYI @RJCD-Diamond

This is related to: #1117 annoyingly the detector on b21 that doesn't have the nexpi PV and the DevShmCache is the newer detector

@GDYendell
Copy link
Contributor

GDYendell commented Nov 20, 2025

The PV isn't temporary. What might change is that we don't rely on toggling it off and on to clear the memory when the consuming process deletes the images as soon as they have been processed. Although it would probably still needed in some cases like scan failure where there might be some images left behind.

@RJCD-Diamond
Copy link
Contributor

@jsouter Are you able to add DevShmCache and nexpi to the b21 eiger's?

@jsouter
Copy link
Contributor

jsouter commented Nov 20, 2025

@jsouter Are you able to add DevShmCache and nexpi to the b21 eiger's?

The PVs are dynamically created by fastcs-eiger directly from the API as reported by the eiger. One of the Eigers on B21 (I think SAXS?) does not provide nexpi, I will double check whether that is just because it's missing from the keys attribute of the detector or if the control is actually absent from the API. I'll have to look into DevShmCache

EDIT: nexpi is missing from the SAXS detector (Eiger 1 Si 4M)
EDIT2: I believed both the SAXS and WAXS were running of the same version of odin but that's not the case, I can try bumping ADOdin to 0-21-beta4 for the SAXS detector on tuesday, that should add in DevShmCache

@coretl
Copy link
Collaborator

coretl commented Dec 17, 2025

@DominicOram @jacob720 I thought we were going to delete ADOdin from ophyd-async and switch testing FastCS Odin instead? That would mean this change would be deleted shortly...

@DominicOram
Copy link
Contributor

@DominicOram @jacob720 I thought we were going to delete ADOdin from ophyd-async and switch testing FastCS Odin instead? That would mean this change would be deleted shortly...

We're actively testing the FastCS Eiger + ADOdin in the meantime with this patched on to make sure Hyperion works with FastCS Eiger / StandardDetector generally. Once #1158 is merged then happy to drop this

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.

6 participants