|
Ko'proq ko'rsatmalar, sekinroq tarjimonlar
|
bet | 9/10 | Sana | 12.01.2024 | Hajmi | 35,2 Kb. | | #135582 |
Bog'liq 5-amaliy mashgulotKo'proq ko'rsatmalar, sekinroq tarjimonlar
Yig'ilgan virtual mashinalar uchun tarjimonlar ko'pincha boshqa virtual mashinalarning uslublariga nisbatan sekinroq . e ustida ishlayotgan paytda eng yomon pastlab paydo mezbon mashinalari kabi joriy x86 chiplari sifatida chuqur ijro quvuri bilan.
Dastur stek mashinasida kompilyatsiya qilinganida registrda yoki xotiradan xotira mashinasida tuzilganidan ko'ra ko'proq ko'rsatmalarni bajarishi kerak. Har bir o'zgaruvchan yuk yoki doimiy uchun ushbu qiymatdan foydalanadigan ko'rsatmalarga qadoqlangan emas, balki ularning alohida yuk ko'rsatmalari kerak. Shaxsiy ko'rsatmalar oddiyroq va tezroq bo'lishi mumkin, ammo ko'rsatmalarning umumiy soni hali ham ko'p .
Ba'zi tarjimonlarda tarjimon keyingi opcode kodini ochish va shu opcode uchun bosqichlarga bo'linish uchun N-ga o'tishni amalga oshirishi kerak . Opcodlarni tanlashning yana bir usuli - oqim kodi . Host oldindan mexanizmlari oldindan va bu indeks yoki bilvosita Hop, maqsad olish mumkin emas. Shunday qilib, joylashtirilgan tarjimon boshqa virtual yo'riqnomani dekodlashda har safar xost-kompyuterning bajariladigan quvuri qayta ishga tushirilishi kerak. Virtual mashinalarning boshqa uslublariga qaraganda, bu yig'ilgan virtual mashinalar uchun tez-tez sodir bo'ladi.
Java uchun Dalvik Android Virtual Mashinasi yo'riqnomani va opcode yuborishdagi nosozliklarni minimallashtirish uchun odatiy 8-bitli Java stack kodi o'rniga 16-bitli virtual registr buyrug'idan foydalanadi . Arifmetik ko'rsatmalar to'g'ridan-to'g'ri mahalliy o'zgaruvchilarni 4-bitli (yoki katta) ko'rsatmalar maydonlari orqali oladi yoki saqlaydi. Lua versiyasi 5.0 o'zining stack virtual mashinasini tezroq virtual ro'yxatga olish mashinasi bilan almashtirdi.
Java virtual mashinasi ommalashganidan beri mikroprotsessorlar bilvosita otish uchun ilg'or tarmoq prognozlarini qo'lladilar . e aksiya aksariyat hollarda quvurlarni N-qatorli o'tish joylaridan boshlashdan saqlaydi va stek tarjimonlarga ta'sir ko'rsatadigan jamoalarni hisoblash xarajatlarining katta qismini kamaytiradi.
|
| |