VirtualBox

Changeset 105179 in vbox for trunk/src/VBox/VMM/include


Ignore:
Timestamp:
Jul 8, 2024 10:38:14 AM (7 months ago)
Author:
vboxsync
Message:

VMM/IEM: Introduce a small cache of recently freed TBs for immediate consumption by the allocator to reduce the amount of time required in ASMBitFirstClear()/ASMBitNextClear() to scan for freed TBs when allocating a new TB, bugref:10653

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/include/IEMInternal.h

    r105177 r105179  
    14901490     *  See iemTbAllocatorFreeupNativeSpace for details. */
    14911491    uint32_t        iPruneNativeFrom;
    1492     uint32_t        uPadding;
     1492    /** Index into IEMTBALLOCATOR::aFreeCache were the next freed TB can be stored
     1493     * (0 means the cache is empty, 32 the cache is full). */
     1494    uint32_t        idxTbCacheFree;
    14931495
    14941496    /** Statistics: Number of TB allocation calls. */
     
    15031505    /** The delayed free list (see iemTbAlloctorScheduleForFree). */
    15041506    PIEMTB          pDelayedFreeHead;
     1507    /* Cache of recently freed TBs for immediate consumption by the allocator. */
     1508    PIEMTB          apTbFreeCache[32];
    15051509
    15061510    /** Allocation chunks. */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette