Compilación anticipada

En informática, Compilación anticipada (AOT por sus siglas en inglés, ahead-of-time) es el acto de compilar un lenguaje de programación de alto nivel como C o C++, o un lenguaje intermedio como Java bytecode o el Common Intermediate Language (CIL) de .NET, a un código de máquina nativo (dependiente del sistema) con la intención de ejecutar el archivo binario resultante nativamente.

AOT produce código máquina optimizado, igual que un compilador nativo "estándar". La diferencia es que AOT transforma el bytecode de una máquina virtual (VM) a código máquina.

Reducción de la sobrecarga en tiempo de ejecución

Algunos lenguajes de programación con código gestionado que pueden ser compilados a un lenguaje intermedio hacen uso del justo-en-tiempo (JIT). Esto, en resumen, compila código intermedio a código máquina para una ejecución nativa mientras el código intermedio se está ejecutando, lo cual puede hacer disminuir el rendimiento de una aplicación. La compilación anticipada elimina la necesidad de este paso al ejecutar la compilación antes de la ejecución en vez de hacerlo durante la ejecución.

La compilación anticipada de lenguajes dinámicamente tipados a código de máquina nativa u otros bytecodes de máquina virtual es posible sólo en un número limitado de casos. Por ejemplo, el compilador AOT del HiPE para Erlang puede hacerlo gracias a avanzadas técnicas de reconstrucción de tipos estáticos y especulación de tipos.[cita requerida]

En la mayoría de los casos, el uso de programas y librerías compilados con AOT proporciona una reducción considerable del entorno de ejecución, ahorrando así espacio de disco, memoria, batería y tiempo de arranque (eliminación de la fase de JIT), etc. Gracias a este motivo, pueden ser muy útil en dispositivos móviles o embebidos.

Compensaciones en la ejecución

Los compiladores AOT consiguen complejas y avanzadas optimizaciones de código qué en la mayoría de los casos serían demasiado costosas de hacer con JIT. Por otro lado, AOT normalmente no puede ejecutar algunas optimizaciones posibles en JIT, como , optimizaciones guiadas por perfil, propagación pseudo-constante o funciones indirectas/virtuales en línea.

Además, los compiladores JIT pueden optimizar especulativamente código "caliente" haciendo especulaciones con el código. El código generado puede ser empeorado si una suposición especulativa resulta ser errónea más adelante. Estas operaciones hacen daño al rendimiento del software ejecutado hasta que el código es optimizado de nuevo por optimización adatativa. Un compilador AOT no puede hacer tales suposiciones y necesita recopilar tanta información como sea posible en tiempo de compilación. No puede usar tanto código especializado porque podría no saber realmente que tipos se usarían en un determinado método. Tales problemas pueden ser aliviados usando optimizaciones guiadas por perfil. Pero incluso así, el código generado no puede adaptarse a un nuevo perfil de ejecución como un compilador JIT haría.

Véase también

Enlaces externos

Read other articles:

Laos padaOlimpiadeKode IOCLAOKONKomite Olimpiade Nasional LaosMedali 0 0 0 Total 0 Penampilan Musim Panas19801984198819921996200020042008201220162020 Laos, bernama resmi Republik Demokratik Rakyat Laos telah berkompetisi dalam tujuh Permainan Olimpiade Musim Panas. Negara tersebut tak pernah masuk Permainan Olimpiade Musim Dingin dan juga tak pernah memenangkan sebuah medali Olimpiade. Komite Olimpiade Nasional Laos dibentuk pada 1975 dan resmi diakui oleh Komite Olimpiade Internasional pada ...

 

PersigarNama lengkapPersatuan Sepak Bola Indonesia GarutJulukanMaung SancangBerdiri28 September 1949; 74 tahun lalu (1949-09-28)StadionStadion R.A.A. AdiwijayaGarut, Indonesia(Kapasitas: 35.000)PemilikPT. Garut SejahteraManajer H. Rudy GunawanPelatih Suwita Pata[1]LigaLiga 3 Jawa Barat2023ke-4 di Grup F, Seri 1 (zona Jawa Barat)Kelompok suporterGarut Mania (GarMan) Kostum kandang Kostum tandang Persigar (singkatan dari Persatuan Sepakbola Indonesia Garut) adalah sebuah klub sepak...

 

Artikel ini bukan mengenai Windows 10. Windows 1.0PembangunMicrosoftKeluarga OSMicrosoft WindowsModel sumberSumber tertutupDirilis kemanufaktur20 November 1985; 38 tahun lalu (1985-11-20)Rilis terbaru1.04 / April 1987; 36 tahun lalu (1987-04)[1]LisensiMS-EULADidahului olehMS-DOSDigantikan olehWindows 2.0 (1987)Status dukunganTidak didukung sejak 31 Desember 2001; 22 tahun lalu (2001-12-31). Tidak memiliki dukungan tambahan.[2] Microsoft Windows 1.0 atau yang leb...

Annual horse race in Australia Horses flying past on the Birdsville Racetrack, circa 1926 The Birdsville Races are horse races held each year in September in the Queensland, Australia, town of Birdsville. Funds are raised in aid of the Royal Flying Doctor Service of Australia. The population is swelled from about 100 to around 7,000 people for the two-day event.[1] As Birdsville is very remote, many travellers come by air and hundreds of aircraft fill the town's airstrip.[2] T...

 

Jock Scott flyArtificial flyJock Scott Salmon FlyTypeSalmon flyHistoryCreatorJohn (Jock) ScottCreated1850MaterialsTypical sizes1 ¼ to 3 inchesTypical hooksSalmon fly hookTailA Topping and Indian CrowBodygolden yellow and black floss, black herl, Toucan feathers,Wingpair of black White-tipped Turkey tail strips; “mixed” sheath of “married” strands of Peacock wing, Yellow, Scarlet and Blue Swan, Bustard, Florican and Golden Pheasant tail; two strands of Peacock sword feather above; “...

 

العلاقات الكوبية الليختنشتانية كوبا ليختنشتاين   كوبا   ليختنشتاين تعديل مصدري - تعديل   العلاقات الكوبية الليختنشتانية هي العلاقات الثنائية التي تجمع بين كوبا وليختنشتاين.[1][2][3][4][5] مقارنة بين البلدين هذه مقارنة عامة ومرجعية للدولتين: و�...

Protected area in California, U.S. Tule Elk State Natural ReserveLocation8653 Station Road, Buttonwillow, CA 93206Nearest cityTupman, CaliforniaCoordinates35°19′17″N 119°21′51″W / 35.3214°N 119.3642°W / 35.3214; -119.3642Created1932OperatorCalifornia State Parkswww.parks.ca.gov?page_id=584 The Tule Elk State Natural Reserve, formerly the Tupman Zoological Reserve, is a protected area operated by California State Parks for the benefit of the general pub...

 

American record label Not to be confused with Columbia Record. This article is about the American record label active worldwide. For the former record company owned by EMI, see Columbia Graphophone Company. For the Japanese record label, see Nippon Columbia. Columbia RecordsLogo since 1999Parent companyColumbia Graphophone Company(October 5, 1925 (1925-10-05) – March 31, 1931 (1931-03-31))Grigsby-Grunow Company (December 1931 (1931-12) – May 19...

 

2016 film by Travis Knight Kubo and the Two StringsTheatrical release posterDirected byTravis KnightScreenplay by Marc Haimes Chris Butler Story by Shannon Tindle Marc Haimes Produced by Arianne Sutner Travis Knight Starring Charlize Theron Art Parkinson Ralph Fiennes Rooney Mara George Takei Matthew McConaughey CinematographyFrank PassinghamEdited byChristopher MurrieMusic byDario MarianelliProductioncompanyLaikaDistributed byFocus Features (North America)Universal Pictures (International)Re...

Swedish explorer, geologist, and paleobotanist (1850–1921) Alfred Gabriel Nathorst Alfred Gabriel Nathorst (7 November 1850 – 20 January 1921) was a Swedish Arctic explorer, geologist, and palaeobotanist. Life He was born in Väderbrunn in Sweden. Nathorst's interest in geology was awakened by Charles Lyell's Principles of Geology and, at the age of 21, Nathorst visited Lyell in England in 1872.[1] Nathorst was employed at the Geological Survey of Sweden in 1873–84. He was ...

 

أشكار كلا اشكاركلا  - قرية -  تقسيم إداري البلد  إيران[1] المحافظة مازندران المقاطعة مقاطعة آمل الناحية ناحية دابودشت القسم الريفي قسم دابوي الجنوبی الريفي إحداثيات 36°33′24″N 52°26′22″E / 36.55667°N 52.43944°E / 36.55667; 52.43944 السكان التعداد السكاني 603 نسمة (إحص...

 

Changing of honours Major's reforms ended awards of the British Empire Medal, obverse pictured In 1993 two separate reviews reported on the British honours system. The first, under prime minister John Major, reported in March and focused on civilian awards. The second was started in March, at Major's suggestion, and carried out by the Ministry of Defence. Major's review abolished the minimum rank requirements for certain civilian awards when made to military personnel and ended the practice o...

Pour les articles homonymes, voir Mortier. Trois briques maintenues ensemble par un mortier. Le mortier est le mélange à consistance de pâte ou de boue, d'un liant et d'agrégats avec de l'eau. Il est utilisé en maçonnerie comme élément de liaison, de scellement ou comme enduit. Techniquement parlant, c'est une colle. Les professionnels du bâtiment qui utilisent le mortier sont le maçon, le couvreur, le carreleur et le tailleur de pierre. Jadis, la fonction était dévolue au gâche...

 

The examples and perspective in this article deal primarily with the United States, the United Kingdom, and Canada and do not represent a worldwide view of the subject. You may improve this article, discuss the issue on the talk page, or create a new article, as appropriate. (January 2023) (Learn how and when to remove this message) Part of a series onDiscrimination Forms Institutional Structural Statistical Taste-based Attributes Age Caste Class Dialect Disability Genetic Hair texture Heigh...

 

Ethnic group Bulgarians in the United KingdomTotal populationBulgarian-born residents5,351 (2001 Census)103,000 (2018 ONS estimate)Regions with significant populationsLondon, Birmingham, Southampton[1]LanguagesBulgarian, EnglishReligionBulgarian Orthodox Church, Irreligion, AtheismRelated ethnic groupsBulgarian diaspora The London Bulgarian Choir on stage The Plovdiv Bulgarian Café in Haringey, London Part of a series onBulgariansБългари Culture Literature Music Art Cinema Na...

Russian heptathlete Olga KurbanOlga Kurban at the 2008 Summer Olympics.Personal informationBorn (1987-12-16) December 16, 1987 (age 36)Height1.73 m (5 ft 8 in)Weight63 kg (139 lb)SportCountry RussiaSportWomen's athleticsEventHeptathlonUpdated on 4 August 2012 Olga Ivanovna Kurban (Russian: Ольга Ивановна Курбан; born December 16, 1987, in Irkutsk) is a female heptathlete from Russia, who competed for her native country at the 2008 Summer O...

 

Scottish sculptor (1828–1892) For other people named Rhind, see Rhind. Medallion head of John Rhind and his wife on his grave in Warriston Cemetery Edinburgh Golden statue of Fame on top of the main dome, Bank of Scotland Head Office, Edinburgh, by John Rhind John Rhind's signature John Rhind ARSA (1828–1892) was a Scottish sculptor, based in Edinburgh. He was born in Banff the son of a master mason. He was trained under Alexander Handyside Ritchie[1] (1804–1870). He served this...

 

Policy on permits required to enter Kosovo Politics of Kosovo Constitution and law Executive President Vjosa Osmani Prime Minister Albin Kurti Second Kurti cabinet Government Legislature Assembly Chairman: Glauk Konjufca Judiciary Constitutional Court Kosovo Judicial Council Administrative divisions Districts Municipalities Recent elections Presidential: 201620212026 Parliamentary: 20192021next Local: 201320172021 Referendums: 199120122024 Political parties PDKLDKAAKSLSVVAKR Foreign policy Mi...

43°28′11″N 81°11′57″W / 43.4696°N 81.199028°W / 43.4696; -81.199028 Mitchell Mitchell is a community in the municipality of West Perth, part of Perth County, Ontario, Canada. It is located at the intersection of Ontario Highways 8 and 23, 20 kilometres (12 mi) northwest of Stratford, and 60 kilometres (37 mi) north of London. Mitchell is no longer a separate entity. On January 1, 1998, the town amalgamated with the neighbouring Townships of Logan...

 

Ancient religious monument in Rome, Italy Temple of VestaReconstructed remains of the Temple of VestaTemple of VestaShown within Augustan RomeClick on the map for a fullscreen viewLocationRegio VIII Forum RomanumCoordinates41°53′30″N 12°29′10″E / 41.8917°N 12.4862°E / 41.8917; 12.4862TypeRoman Old kingdomHistoryBuilderUnknown builderFoundedunknown old Kingdom era The Temple of Vesta, or the aedes (Latin Aedes Vestae; Italian: Tempio di Vesta), is an ancient...