Minangka bagéan saka proyek riset
Kanggo tes
Ing tahap sabanjure, uga direncanakake kanggo mindhah optimasi RTL interprocedural menyang benang sing kapisah, kanthi nganggep karakteristik platform hardware. Sawisé iku, kita rencana kanggo ngleksanakake parallelization saka optimizations intraprocedural (IPA) Applied kanggo kode nang fungsi, preduli saka spesifik telpon. Link watesan kanggo saiki yaiku pengumpul sampah, sing wis nambah kunci global sing mateni operasi pengumpulan sampah nalika mlaku ing mode multi-threaded (ing mangsa ngarep kolektor sampah bakal diadaptasi kanggo eksekusi multi-threaded GCC).
Kanggo ngevaluasi owah-owahan ing kinerja, test Suite wis disiapake sing ngrakit gimple-match.c file, kang kalebu luwih saka 100 ewu baris kode lan 1700 fungsi. Tes ing sistem kanthi CPU Intel Core i5-8250U kanthi 4 intine fisik lan 8 virtual (Hyperthreading) nuduhake nyuda wektu eksekusi optimasi GIMPLE Intra Procedural saka 7 nganti 4 detik nalika mbukak 2 benang lan dadi 3 detik nalika mlaku 4. benang, i.e. Tambah ing kacepetan saka tahap perakitan ing pertimbangan wis ngrambah dening 1.72 lan 2.52 kaping, mungguh. Tes uga nuduhake yen nggunakake inti virtual karo Hyperthreading ora mimpin kanggo nambah kinerja.
Wektu mbangun sakabèhé dikurangi kira-kira 10%, nanging miturut ramalan, parallelizing optimizations RTL bakal ngidini entuk asil sing luwih nyata, amarga tahap iki njupuk wektu luwih akeh sajrone kompilasi. Kira-kira sawise parallelization RTL, total wektu perakitan bakal suda dening 1.61 kaping. Sawise iki, bakal bisa nyuda wektu mbangun kanthi 5-10% liyane kanthi parallelizing optimizations IPA.
Source: opennet.ru