jemalloc

    0熱度

    1回答

    背景:我正在研究一個搜索引擎,並開發一個新功能,它將創建一個新的線程池(32個線程)。滿足一些規則的查詢將由新線程池執行。同時,舊的線程池(也有32個線程)可能仍然有效,並且將執行其他查詢。 問題:我們正在使用Jemalloc進行內存分配。當我們啓用新功能並且新的線程池開始工作時,Jemalloc在4〜5個內存中的內存消耗從80GB增加到95GB,然後在2個小時內降低。我查看了Jemalloc的統

    3熱度

    1回答

    我們目前有一個Java本機內存泄漏的問題。服務器相當大(40CPUS,128GB內存)。 Java堆大小是64G,我們運行了一個非常內存密集的應用程序,它將大量數據讀取到大約400個線程的字符串中,並在幾分鐘後將它們從內存中拋出。 所以堆堆積得非常快,但是堆上的東西變得過時,並且可以非常快速地被打開。所以我們必須使用G1來讓STW在幾分鐘內不會中斷。 現在,這似乎工作正常 - 堆足夠大,運行應用程

    0熱度

    1回答

    我運行使用jemalloc作爲內存分配器哪個預分割大塊成預定義尺寸的小塊(C++程序即1,2,4,8,.. 。字節) 即使我要求110個字節的存儲器分配,它返回與128個字節容量的存儲器。 在我的程序,我跟蹤動態分配的存儲器(具有高度多樣化的大小)的量,並限制線程的存儲器分配,以避免內存不足崩潰。 然而,由於要求的尺寸,並給予實際尺寸之間的差異,我不能準確計算動態分配的字節的數量。 是否有接收請求

    1熱度

    2回答

    下面的程序不會觸發斷言失敗: int main(int argc, char **argv) { int * n = (int *)malloc(100); //malloc_stats_print(nullptr, nullptr, "gablh"); free(n); *n += 1; std::cerr << *n << std::endl