Bounds-checking elimination (original) (raw)

About DBpedia

In computer science, bounds-checking elimination is a compiler optimization useful in programming languages or runtime systems that enforce bounds checking, the practice of checking every index into an array to verify that the index is within the defined valid range of indexes. Its goal is to detect which of these indexing operations do not need to be validated at runtime, and eliminating those checks.

Property Value
dbo:abstract In computer science, bounds-checking elimination is a compiler optimization useful in programming languages or runtime systems that enforce bounds checking, the practice of checking every index into an array to verify that the index is within the defined valid range of indexes. Its goal is to detect which of these indexing operations do not need to be validated at runtime, and eliminating those checks. One common example is accessing an array element, modifying it, and storing the modified value in the same array at the same location. Normally, this example would result in a bounds check when the element is read from the array and a second bounds check when the modified element is stored using the same array index. Bounds-checking elimination could eliminate the second check if the compiler or runtime can determine that neither the array size nor the index could change between the two array operations. Another example occurs when a programmer loops over the elements of the array, and the loop condition guarantees that the index is within the bounds of the array. It may be difficult to detect that the programmer's manual check renders the automatic check redundant. However, it may still be possible for the compiler or runtime to perform proper bounds-checking elimination in this case. (en) Eliminacja sprawdzania zakresu (ang. bounds-checking elimination) to optymalizacja kompilatora przydatna w językach programowania lub środowiskach uruchomieniowych które wymagają sprawdzania zakresu tablic, czyli sprawdzania przy każdym dostępie do tablicy czy indeks do niej ma wartość mieszczącą się w jej zakresie. Celem jest eliminacja niepotrzebnych sprawdzeń. Prostym przykładem jest odczyt elementu tablicy, modyfikacja go i zapis zmodyfikowanej wartości w to samo miejsce. Normalnie wymagało by to dwóch sprawdzeń zakresu, najpierw przy odczycie, a potem przy zapisie. Eliminacja sprawdzania zakresu pozwala na pominięcie drugiego sprawdzenia gdy kompilator albo środowisko uruchomieniowe mogą udowodnić, że rozmiar tablicy i indeks do niej nie zmieniają się pomiędzy tymi dwoma operacjami na niej. Inny przykład to iteracja po elementach tablicy, gdy warunek pętli gwarantuje, że indeks mieści się w jej zakresie. (pl)
dbo:wikiPageExternalLink http://citeseer.ist.psu.edu/721276.html
dbo:wikiPageID 3182829 (xsd:integer)
dbo:wikiPageLength 3828 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID 1105806198 (xsd:integer)
dbo:wikiPageWikiLink dbr:HotSpot_(virtual_machine) dbr:Bounds_checking dbc:Computer_errors dbr:Static_single_assignment_form dbr:Computer_science dbr:C_Sharp_(programming_language) dbc:Compiler_optimizations dbr:Just-in-time_compilation dbr:Iteration dbr:Java_(programming_language) dbr:Array_data_structure dbr:Array_data_type dbr:Runtime_(program_lifecycle_phase) dbr:Runtime_system dbr:Programming_language dbr:Compiler_optimization
dbp:wikiPageUsesTemplate dbt:Reflist dbt:Short_description dbt:Compiler_optimizations
dcterms:subject dbc:Computer_errors dbc:Compiler_optimizations
gold:hypernym dbr:Optimization
rdf:type dbo:Software yago:WikicatCompilerOptimizations yago:WikicatComputerErrors yago:Abstraction100002137 yago:Act100030358 yago:Action100037396 yago:Change100191142 yago:ChangeOfState100199130 yago:Error107299569 yago:Event100029378 yago:Happening107283608 yago:Improvement100248977 yago:Optimization100260051 yago:PsychologicalFeature100023100 yago:YagoPermanentlyLocatedEntity
rdfs:comment In computer science, bounds-checking elimination is a compiler optimization useful in programming languages or runtime systems that enforce bounds checking, the practice of checking every index into an array to verify that the index is within the defined valid range of indexes. Its goal is to detect which of these indexing operations do not need to be validated at runtime, and eliminating those checks. (en) Eliminacja sprawdzania zakresu (ang. bounds-checking elimination) to optymalizacja kompilatora przydatna w językach programowania lub środowiskach uruchomieniowych które wymagają sprawdzania zakresu tablic, czyli sprawdzania przy każdym dostępie do tablicy czy indeks do niej ma wartość mieszczącą się w jej zakresie. Celem jest eliminacja niepotrzebnych sprawdzeń. Inny przykład to iteracja po elementach tablicy, gdy warunek pętli gwarantuje, że indeks mieści się w jej zakresie. (pl)
rdfs:label Bounds-checking elimination (en) Eliminacja sprawdzania zakresu (pl)
owl:sameAs freebase:Bounds-checking elimination yago-res:Bounds-checking elimination wikidata:Bounds-checking elimination dbpedia-pl:Bounds-checking elimination https://global.dbpedia.org/id/4aewD
prov:wasDerivedFrom wikipedia-en:Bounds-checking_elimination?oldid=1105806198&ns=0
foaf:isPrimaryTopicOf wikipedia-en:Bounds-checking_elimination
is dbo:wikiPageRedirects of dbr:Array_Bound_Checks_Removal dbr:ABCREM dbr:Bounds_checking_elimination
is dbo:wikiPageWikiLink of dbr:Bounded_pointer dbr:Bounds_checking dbr:Array_(data_type) dbr:DDC-I dbr:ILNumerics dbr:Optimizing_compiler dbr:Array_Bound_Checks_Removal dbr:ABCREM dbr:Bounds_checking_elimination
is foaf:primaryTopic of wikipedia-en:Bounds-checking_elimination