BigIntegerAggregation¶
Usage
use CommAggregation.BigIntegerAggregation;
or
import CommAggregation.BigIntegerAggregation;
- proc bigint.serializedSize()¶
- proc bigint.serializeInto(x: c_ptr(uint(8)))¶
- proc ref bigint.deserializeFrom(x: c_ptr(uint(8)))¶
- record DstAggregatorBigint¶
- type aggType = uint(8)¶
- const bufferSize = dstBuffSize * (c_sizeof(c_ptr(bigint)) + c_sizeof(mp_size_t) + c_sizeof(mp_limb_t)) : int¶
- const myLocaleSpace = 0..<numLocales¶
- var lastLocale : int¶
- var opsUntilYield = yieldFrequency¶
- var lBuffers : c_ptr(c_ptr(aggType))¶
- var rBuffers : [myLocaleSpace] remoteBuffer(aggType)¶
- var bufferIdxs : c_ptr(int)¶
- proc ref postinit()¶
- proc ref deinit()¶
- proc ref flush()¶
- proc ref copy(ref dst: bigint, const ref src: bigint)¶
- proc ref flushBuffer(loc: int, ref bufferIdx, freeData)¶
- record SrcAggregatorBigint¶
- type aggType = c_ptr(bigint)¶
- const bufferSize = srcBuffSize¶
- const uintBufferSize = srcBuffSize * (c_sizeof(mp_size_t) + c_sizeof(mp_limb_t)) : int¶
- const myLocaleSpace = 0..<numLocales¶
- var lastLocale : int¶
- var opsUntilYield = yieldFrequency¶
- var dstAddrs : c_ptr(c_ptr(aggType))¶
- var lSrcAddrs : c_ptr(c_ptr(aggType))¶
- var lSrcVals : [myLocaleSpace] [0..#uintBufferSize] uint(8)¶
- var rSrcAddrs : [myLocaleSpace] remoteBuffer(aggType)¶
- var rSrcVals : [myLocaleSpace] remoteBuffer(uint(8))¶
- var bufferIdxs : c_ptr(int)¶
- proc ref postinit()¶
- proc ref deinit()¶
- proc ref flush()¶
- proc ref copy(ref dst: bigint, const ref src: bigint)¶
- proc ref flushBuffer(loc: int, ref bufferIdx, freeData)¶