Gẹgẹbi apakan ti iṣẹ akanṣe iwadi
Fun idanwo
Ni ipele atẹle, o tun gbero lati gbe awọn iṣapeye RTL interprocedural sinu awọn okun lọtọ, ni akiyesi awọn abuda ti pẹpẹ ohun elo. Lẹhin iyẹn, a gbero lati ṣe isọdọkan ti awọn iṣapeye intracedural (IPA) ti a lo si koodu inu iṣẹ naa, laibikita awọn pato ti ipe naa. Ọna asopọ aropin fun bayi ni agbasọ idoti, eyiti o ti ṣafikun titiipa agbaye kan ti o mu awọn iṣẹ ṣiṣe ikojọpọ idoti ṣiṣẹ lakoko ti o nṣiṣẹ ni ipo-ọna-ọpọlọpọ (ni ọjọ iwaju oluṣeto idoti yoo ṣe deede fun ipaniyan ti ọpọlọpọ-asapo ti GCC).
Lati ṣe iṣiro awọn ayipada ninu iṣẹ ṣiṣe, a ti pese suite idanwo kan ti o ṣajọ faili gimple-match.c, eyiti o pẹlu diẹ sii ju awọn laini koodu 100 ẹgbẹrun ati awọn iṣẹ 1700. Awọn idanwo lori eto pẹlu Intel Core i5-8250U CPU pẹlu awọn ohun kohun 4 ti ara ati 8 foju (Hyperthreading) fihan idinku ninu akoko ipaniyan ti Awọn iṣapeye Ilana Intra Procedural GIMPLE lati 7 si awọn aaya 4 nigbati o nṣiṣẹ awọn okun 2 ati si awọn aaya 3 nigbati o nṣiṣẹ 4 awon okun, i.e. Ilọsoke iyara ti ipele apejọ labẹ ero ti waye nipasẹ awọn akoko 1.72 ati 2.52, lẹsẹsẹ. Awọn idanwo tun fihan pe lilo awọn ohun kohun foju pẹlu Hyperthreading ko ja si iṣẹ ṣiṣe pọ si.
Akoko kikọ gbogbogbo ti dinku nipasẹ isunmọ 10%, ṣugbọn ni ibamu si awọn asọtẹlẹ, isọdọkan awọn iṣapeye RTL yoo gba laaye iyọrisi awọn abajade ojulowo diẹ sii, nitori ipele yii gba akoko pupọ diẹ sii lakoko iṣakojọpọ. Ni isunmọ lẹhin isọdọkan RTL, akoko apejọ lapapọ yoo dinku nipasẹ awọn akoko 1.61. Lẹhin eyi, yoo ṣee ṣe lati dinku akoko kikọ nipasẹ 5-10% miiran nipa sisọpọ awọn iṣapeye IPA.
orisun: opennet.ru