Dmitrii Kuvaiskii
Dmitrii Kuvaiskii
# Description of current memory allocators There are two memory allocators in Gramine: MEMMGR and SLAB. Both allocators rely on the following shared logic: - `system_malloc()` and `system_free()` are macros...
I noticed one more thing: `CustomThreshold::comparisonOperator` is a required field. So I can't write code like this: ``` Warning: { ... treatMissingDataOverride: TreatMissingData.NOT_BREACHING, comparisonOperatorOverride: ComparisonOperator.LESS_THAN_THRESHOLD, } ``` Because the build...
> Gramine commit hash > > 3be77927bbac64c2a4412f7e49dd5e0a59692b5b This is a commit hash for the `examples` repo: https://github.com/gramineproject/examples/commit/3be77927bbac64c2a4412f7e49dd5e0a59692b5b What is the commit/version of Gramine itself that you used? Was it `v1.4`,...
Thanks for the info. Yes, apparently you're using Gramine v1.4. > Is there a command to check Gramine version? There is no command (yeah, I know, I know). But if...
> Now, as you can see there is a lot of increase in time using Gramine, but no increase in memory (I need to calculate current and peak memory also...
Ok, indeed, the problem is rooted somewhere in Gramine behavior. @CasellaJr How invested are you in this problem? Could you run a performance analysis? There are ways to profile Gramine-SGX,...
@CasellaJr Yes, sorry if we confused you. I think we wanted to see two things: 1. The performance plots for the experiment with 1000 epochs (no perf enabled) 2. The...
If you could show us the assembly for any of the top `libgomp-...` places, that would be great. I have a suspicion that `libgomp-...` shared library has a raw `syscall`...
> │ mov %r9d,%eax > │ syscall That's exactly what I was looking for. Thanks! (Yes, pressing "Enter" was the right action.) So now we know two sources of performance...
> @dimakuv thank you for the detailed answer and effort. About the first problem: I am going to ask help to my colleagues to build Gramine with `-Dlibgomp=enabled`, because I...