cpython/Objects
Sam Gross 412920a41e
gh-112532: Improve mimalloc page visiting (#114133)
This adds support for visiting abandoned pages in mimalloc and improves
the performance of the page visiting code. Abandoned pages contain
memory blocks from threads that have exited. At some point, they may be
later reclaimed by other threads. We still need to visit those pages in
the free-threaded GC because they contain live objects.

This also reduces the overhead of visiting mimalloc pages:

 * Special cases for full, empty, and pages containing only a single
   block.
 * Fix free_map to use one bit instead of one byte per block.
 * Use fast integer division by a constant algorithm when computing
   block offset from block size and index.
2024-01-22 13:10:21 -08:00
..
clinic
mimalloc gh-112532: Improve mimalloc page visiting (#114133) 2024-01-22 13:10:21 -08:00
stringlib
abstract.c
boolobject.c
bytearrayobject.c
bytes_methods.c
bytesobject.c
call.c
capsule.c
cellobject.c
classobject.c
codeobject.c
complexobject.c
descrobject.c
dictnotes.txt
dictobject.c
enumobject.c
exception_handling_notes.txt
exceptions.c
fileobject.c
floatobject.c
frame_layout.md
frameobject.c
funcobject.c
genericaliasobject.c
genobject.c
interpreteridobject.c
iterobject.c
listobject.c
listsort.txt
lnotab_notes.txt
locations.md
longobject.c
memoryobject.c
methodobject.c
moduleobject.c
namespaceobject.c
object.c
object_layout.md
object_layout_312.gv
object_layout_312.png
object_layout_full_312.gv
object_layout_full_312.png
obmalloc.c
odictobject.c
picklebufobject.c
rangeobject.c
README
setobject.c
sliceobject.c
structseq.c
tupleobject.c
typeobject.c
typeslots.inc
typeslots.py
typevarobject.c
unicodectype.c
unicodeobject.c
unicodetype_db.h
unionobject.c
weakrefobject.c

Source files for various builtin objects