view the rest of the comments
Technology
This is the official technology community of Lemmy.ml for all news related to creation and use of technology, and to facilitate civil, meaningful discussion around it.
Ask in DM before posting product reviews or ads. All such posts otherwise are subject to removal.
Rules:
1: All Lemmy rules apply
2: Do not post low effort posts
3: NEVER post naziped*gore stuff
4: Always post article URLs or their archived version URLs as sources, NOT screenshots. Help the blind users.
5: personal rants of Big Tech CEOs like Elon Musk are unwelcome (does not include posts about their companies affecting wide range of people)
6: no advertisement posts unless verified as legitimate and non-exploitative/non-consumerist
7: crypto related posts, unless essential, are disallowed
Ahh, okay. I think the main confusion is I was kind of ignoring the code portion of the library, which is easily deduplicated like you said.
Any allocations done by the library running (opencl.so in this example) will still be separate per process though, unless the program is passing mutable shared memory buffers around, which could be the case if there's IPC going on.
The point about memory usage being hard to measure is definitely true, especially since linux won't actually consume memory until a write is made to the block, unlike Windows which preemptively allocates the full requested size.