Loading...
--- libmalloc/libmalloc-474.0.13/tests/perf_contended_malloc_free.c
+++ libmalloc/libmalloc-283/tests/perf_contended_malloc_free.c
@@ -9,10 +9,6 @@
#include <pthread.h>
#include <malloc/malloc.h>
#include <darwintest.h>
-
-#include <../src/internal.h> // for platform.h
-
-T_GLOBAL_META(T_META_TAG_PERF, T_META_TAG_XZONE);
// number of times malloc & free are called per dt_stat batch
#define ITERATIONS_PER_DT_STAT_BATCH 10000ull
@@ -265,7 +261,7 @@
T_DECL(perf_uncontended_nano_bench, "Uncontended nano malloc",
T_META_ALL_VALID_ARCHS(NO),
T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
- T_META_ENVVAR("MallocNanoZone=1"))
+ T_META_ENVVAR("MallocNanoZone=1"), T_META_TAG_PERF)
{
malloc_bench(true, 16, 256, 16); // NANO_MAX_SIZE
}
@@ -273,7 +269,7 @@
T_DECL(perf_contended_nano_bench, "Contended nano malloc",
T_META_ALL_VALID_ARCHS(NO),
T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
- T_META_ENVVAR("MallocNanoZone=1"))
+ T_META_ENVVAR("MallocNanoZone=1"), T_META_TAG_PERF)
{
malloc_bench(false, 16, 256, 16); // NANO_MAX_SIZE
}
@@ -281,7 +277,7 @@
T_DECL(perf_uncontended_tiny_bench, "Uncontended tiny malloc",
T_META_ALL_VALID_ARCHS(NO),
T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
- T_META_ENVVAR("MallocNanoZone=0"))
+ T_META_ENVVAR("MallocNanoZone=0"), T_META_TAG_PERF)
{
malloc_bench(true, 16, 1008, 16); // SMALL_THRESHOLD
}
@@ -289,28 +285,31 @@
T_DECL(perf_contended_tiny_bench, "Contended tiny malloc",
T_META_ALL_VALID_ARCHS(NO),
T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
- T_META_ENVVAR("MallocNanoZone=0"))
+ T_META_ENVVAR("MallocNanoZone=0"), T_META_TAG_PERF)
{
malloc_bench(false, 16, 1008, 16); // SMALL_THRESHOLD
}
T_DECL(perf_uncontended_small_bench, "Uncontended small malloc",
T_META_ALL_VALID_ARCHS(NO),
- T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false))
+ T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
+ T_META_TAG_PERF)
{
malloc_bench(true, 1024, 15 * 1024, 512); // LARGE_THRESHOLD
}
T_DECL(perf_contended_small_bench, "Contended small malloc",
T_META_ALL_VALID_ARCHS(NO),
- T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false))
+ T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
+ T_META_TAG_PERF)
{
malloc_bench(false, 1024, 15 * 1024, 512); // LARGE_THRESHOLD
}
T_DECL(perf_uncontended_large_bench, "Uncontended large malloc",
T_META_ALL_VALID_ARCHS(NO),
- T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false))
+ T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
+ T_META_TAG_PERF)
{
iterations_per_dt_stat_batch = ITERATIONS_PER_DT_STAT_BATCH_LARGE_MALLOC;
malloc_bench(true, 16 * 1024, 256 * 1024, 16 * 1024);
@@ -318,27 +317,9 @@
T_DECL(perf_contended_large_bench, "Contended large malloc",
T_META_ALL_VALID_ARCHS(NO),
- T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false))
+ T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
+ T_META_TAG_PERF)
{
iterations_per_dt_stat_batch = ITERATIONS_PER_DT_STAT_BATCH_LARGE_MALLOC;
malloc_bench(false, 16 * 1024, 256 * 1024, 16 * 1024);
}
-
-// rdar://100479142
-#if CONFIG_DEFERRED_RECLAIM
-
-// If deferred reclaim is available but not enabled by default, test it too
-T_DECL(perf_contended_large_deferred_reclaim_bench,
- "Contended large malloc (deferred reclaim)",
- T_META_ALL_VALID_ARCHS(NO),
- T_META_LTEPHASE(LTE_POSTINIT), T_META_CHECK_LEAKS(false),
- T_META_ENABLED(!DEFAULT_LARGE_CACHE_ENABLED),
- T_META_ENVVAR("MallocLargeCache=1"))
-{
- // Add more iterations to also serve as a stress test for deferred reclaim
- iterations_per_dt_stat_batch =
- ITERATIONS_PER_DT_STAT_BATCH_LARGE_MALLOC * 20;
- malloc_bench(false, 16 * 1024, 256 * 1024, 16 * 1024);
-}
-
-#endif // CONFIG_DEFERRED_RECLAIM