Every time a pointer deallocation is requested, the module will have to lookup the general allocation table to determine the kind of memory it is linked to, and perform the correct kind of deallocation. Table lookups are notoriously expensive, so dedicated mechanisms should be provided to avoid impeding performance.