Skip to content

Commit 01a0f4a

Browse files
committed
Update page size to 64k
1 parent 0f56da8 commit 01a0f4a

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

src/gc.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@
3232
extern "C" {
3333
#endif
3434

35-
#define GC_PAGE_LG2 14 // log2(size of a page)
36-
#define GC_PAGE_SZ (1 << GC_PAGE_LG2) // 16k
35+
#define GC_PAGE_LG2 16 // log2(size of a page)
36+
#define GC_PAGE_SZ (1 << GC_PAGE_LG2) // 64k
3737
#define GC_PAGE_OFFSET (JL_HEAP_ALIGNMENT - (sizeof(jl_taggedvalue_t) % JL_HEAP_ALIGNMENT))
3838

3939
#define jl_malloc_tag ((void*)0xdeadaa01)
@@ -233,14 +233,14 @@ STATIC_INLINE jl_gc_pagemeta_t *pop_lf_page_metadata_back(jl_gc_global_page_pool
233233
#define REGION0_PG_COUNT (1 << 16)
234234
#define REGION1_PG_COUNT (1 << 16)
235235
#define REGION2_PG_COUNT (1 << 18)
236-
#define REGION0_INDEX(p) (((uintptr_t)(p) >> 14) & 0xFFFF) // shift by GC_PAGE_LG2
236+
#define REGION0_INDEX(p) (((uintptr_t)(p) >> GC_PAGE_LG2) & 0xFFFF) // shift by GC_PAGE_LG2
237237
#define REGION1_INDEX(p) (((uintptr_t)(p) >> 30) & 0xFFFF)
238238
#define REGION_INDEX(p) (((uintptr_t)(p) >> 46) & 0x3FFFF)
239239
#else
240240
#define REGION0_PG_COUNT (1 << 8)
241241
#define REGION1_PG_COUNT (1 << 10)
242242
#define REGION2_PG_COUNT (1 << 0)
243-
#define REGION0_INDEX(p) (((uintptr_t)(p) >> 14) & 0xFF) // shift by GC_PAGE_LG2
243+
#define REGION0_INDEX(p) (((uintptr_t)(p) >> GC_PAGE_LG2) & 0xFF) // shift by GC_PAGE_LG2
244244
#define REGION1_INDEX(p) (((uintptr_t)(p) >> 22) & 0x3FF)
245245
#define REGION_INDEX(p) (0)
246246
#endif

src/julia_internal.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,8 @@ void *jl_gc_perm_alloc(size_t sz, int zero,
345345
void gc_sweep_sysimg(void);
346346

347347

348-
// pools are 16376 bytes large (GC_POOL_SZ - GC_PAGE_OFFSET)
348+
// pools are 65528 bytes large (GC_POOL_SZ - GC_PAGE_OFFSET)
349+
// TODO update table for 64k size
349350
static const int jl_gc_sizeclasses[] = {
350351
#ifdef _P64
351352
8,

0 commit comments

Comments
 (0)