jit

    3熱度

    1回答

    我的項目是用C++編寫的,它利用動態生成的代碼將一些東西粘合在一起(使用Fabrice Bellard的TCC和一些手動生成的彙編thunk )。動態生成的代碼有時會跳轉到用C++實現的「運行時幫助程序」中。 有一個功能,允許完全中止動態生成的代碼,無論它在哪裏,都跳回到C++(調用者)。爲了達到這個目的,我簡單地使用C++異常:一個運行時幫助器(作爲C函數)簡單地拋出一個C++異常,並且它通過生

    2熱度

    1回答

    我一直覺得C#編譯器的/ optimize標誌沒有太大的作用。諸如this one之類的文章描述了IL中相對較少的優化:大部分都歸入JIT。然而,最近我試圖加速一些CPU密集型代碼(想想很多遍歷數組和字典以及簡單的數字),並且我嘗試開啓優化只是爲了踢。結果是速度提高了3x改進。請注意,這純粹是通過點擊VS項目屬性頁面中的「優化」複選框。切換DEBUG和TRACE常量沒有性能影響。 儘管小的IL優化

    1熱度

    1回答

    我正在調試一些JIT'ed代碼。我將gdb附加到正在運行的進程。我正在尋找方法來設置一個斷點(或任何其他方式),這將使gdb在每個call instruction處中斷/暫停到特定的功能。我知道函數名稱。 注意:我可以在call instruction的採取分支上設置一個斷點,即gdb在該函數處中斷,但我希望調試器在採用該分支之前應該中斷,即在call instruction處。 這可能嗎? 感謝

    1熱度

    1回答

    我不知道正確的方式來搜索這個問題,但這是我做了很多事情,並想弄清楚,如果我一直默默地潛水我的代碼。是這樣的: Int32 x = 5; Int32 y = 7; Int32 z = x+y; Console.Write(z.ToString()); 與此相同: Int32 x = 5; Int32 y = 7; Console.Write((x+y).ToString());

    2熱度

    1回答

    我正在開發玩具CPU(TR3200 cpu)的仿真器。其實我有一個純粹的解釋器核心,但我正在研究開發一個追蹤JIT cpu核心。 我對如何追蹤被追蹤的源機器代碼是否被仿真代碼修改(自修改代碼或類似將操作系統加載到RAM的操作系統) 我在考慮使用段或間隔爲此,但我找不到任何信息或實例如何處理。 換句話說......我知道JIT(我在考慮如何使用asmjit),我應該在使用jitted塊的開始地址作爲

    1熱度

    1回答

    我正在尋找一種將小型計算密集型程序編譯爲機器代碼可執行文件的方法。 該方案目前正在寫在微軟的Visual Studio C#的環境,但我也同樣高興做到這一點在C,C++或任何類似的變體,如果它導致我得到一個執行的機器代碼。 (我也有SharpDevelop的環境) 我想避免運行時的開銷,我想到的是通過使用一個運行時JIT編譯器發生。 我希望只有我將永遠使用該程序,大概只有我的機器(S),所以我沒有

    2熱度

    1回答

    「編譯託管代碼時,編譯器會將源代碼轉換爲與CPU無關的中間語言(IL)代碼。即時編譯器(JIT)將IL代碼編譯爲與CPU相關的本地代碼」 :http://www.tutorialspoint.com/asp.net/asp.net_introduction.htm 請解釋'CPU Specific'是指什麼。

    0熱度

    1回答

    爲了簡化問題,我們假設在我們的JRE中,我們有一個不使用JIT的熱點JVM實現。 含義我們不會預編譯機器代碼。 我想了解,當JVM遇到字節碼時,解釋器是否使用熱點編譯器將代碼編譯爲機器代碼,只有這樣JVM才能運行代碼? 或者解釋器是否只運行代碼,因爲JVM具有與每個字節代碼命令相對應的某種本地方法?

    4熱度

    2回答

    假設我有一個聲明元的陣列的方法,但不使用它: public void frobnicate() { int[] pointless = new int[1000]; System.out.println("bored"); } 會發生什麼我pointless陣列?我認爲javac會保留它(雖然我不確定)。如果是這樣,JIT編譯器會做什麼?它會完全擺脫它嗎?它會創建數組而不

    0熱度

    1回答

    我一直在嘗試利用gmpy模塊時遇到速度問題。 import numpy as np import gmpy2 as gm N = 1000 a = range(N) %timeit [gm.sin(x) for x in a] # 100 loops, best of 3: 7.39 ms per loop %timeit np.sin(a) # 10000 loops, best