About: Strength reduction     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : yago:WikicatCompilerOptimizations, within Data Space : dbpedia.org associated with source document(s)
QRcode icon
http://dbpedia.org/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FStrength_reduction

In software engineering, strength reduction is a compiler optimization where expensive operations are replaced with equivalent but less expensive operations. The classic example of strength reduction converts "strong" multiplications inside a loop into "weaker" additions – something that frequently occurs in array addressing. (, p. 1) Examples of strength reduction include: * replacing a multiplication within a loop with an addition * replacing an exponentiation within a loop with a multiplication

AttributesValues
rdf:type
rdfs:label
  • Strength reduction
  • 演算子強度低減
  • Снижение стоимости операций
  • 強度折減
rdfs:comment
  • In software engineering, strength reduction is a compiler optimization where expensive operations are replaced with equivalent but less expensive operations. The classic example of strength reduction converts "strong" multiplications inside a loop into "weaker" additions – something that frequently occurs in array addressing. (, p. 1) Examples of strength reduction include: * replacing a multiplication within a loop with an addition * replacing an exponentiation within a loop with a multiplication
  • Снижением стоимости операций в теории компиляторов называют замену медленных операций, например, умножения и деления, на более быстрые, такие как сложение, вычитание, сдвиг. Так, деление (умножение) на равносильно сдвигу на разрядов вправо (влево). Существуют алгоритмы преобразования операций умножения и деления на произвольное целое число в последовательность более простых операций (сложений, вычитаний и сдвигов). Подобная оптимизация обычно выполняется компилятором автоматически и не требует вмешательства программиста.
  • 在軟體工程領域,強度折減(Strength reduction)是一個編譯器最佳化技術,它將昂貴的運算以相同但是相對便宜的運算取代,最經典的範例就是將乘法轉換為使用迴圈的連續加法,這經常使用在陣列的定址。(,p.1) 強度折減的範例包含: * 使用迴圈及加法取代乘法運算 * 使用迴圈及乘法取代指數運算
  • 演算子強度低減(英: Strength reduction)とはコンパイラ最適化手法の一つで、コストの高い演算式を等価でコストの低い演算式に置き換えるものである。 演算子強度低減では、数学的な同一性を用いて低速な演算式を高速な演算式で置換する。置換したことによるコストと利点は対象の CPU や、時には周辺のコード(CPU 内の機能ユニットが利用できるかどうか)に大きく依存する。 * 整数の乗除算を 2 の累乗と論理シフトや算術シフトで置き換える。 * 整数の乗算をシフト、加減算によって置き換える 帰納変数の強度低減、再帰的な強度低減では、自動的に変化するような結果を返す関数を以前の結果を用いて簡単な演算結果に置き換える。これは、手続き型プログラミングでは、ループ変数に関連する式に適用でき、宣言型プログラミングでは再帰呼び出しの引数に適用できる。例えば、 f x = ... (2 ** x) ... (f (x + 1)) ... は、以下のようになる。 f x = f' x (2 ** x)ここで f' x z = ... z ... (f' (x + 1) (2 * z)) ...である。
sameAs
dct:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
Link from a Wikipage to an external page
foaf:isPrimaryTopicOf
prov:wasDerivedFrom
has abstract
  • In software engineering, strength reduction is a compiler optimization where expensive operations are replaced with equivalent but less expensive operations. The classic example of strength reduction converts "strong" multiplications inside a loop into "weaker" additions – something that frequently occurs in array addressing. (, p. 1) Examples of strength reduction include: * replacing a multiplication within a loop with an addition * replacing an exponentiation within a loop with a multiplication
  • 演算子強度低減(英: Strength reduction)とはコンパイラ最適化手法の一つで、コストの高い演算式を等価でコストの低い演算式に置き換えるものである。 演算子強度低減では、数学的な同一性を用いて低速な演算式を高速な演算式で置換する。置換したことによるコストと利点は対象の CPU や、時には周辺のコード(CPU 内の機能ユニットが利用できるかどうか)に大きく依存する。 * 整数の乗除算を 2 の累乗と論理シフトや算術シフトで置き換える。 * 整数の乗算をシフト、加減算によって置き換える 帰納変数の強度低減、再帰的な強度低減では、自動的に変化するような結果を返す関数を以前の結果を用いて簡単な演算結果に置き換える。これは、手続き型プログラミングでは、ループ変数に関連する式に適用でき、宣言型プログラミングでは再帰呼び出しの引数に適用できる。例えば、 f x = ... (2 ** x) ... (f (x + 1)) ... は、以下のようになる。 f x = f' x (2 ** x)ここで f' x z = ... z ... (f' (x + 1) (2 * z)) ...である。 このようにして、高価な演算 (2 ** x) は再帰的関数 f' でコストの低い (2 * z) に置換された。いかなる f' の呼び出しに関しても、z = 2 ** x との等価性を維持している。
  • Снижением стоимости операций в теории компиляторов называют замену медленных операций, например, умножения и деления, на более быстрые, такие как сложение, вычитание, сдвиг. Так, деление (умножение) на равносильно сдвигу на разрядов вправо (влево). Существуют алгоритмы преобразования операций умножения и деления на произвольное целое число в последовательность более простых операций (сложений, вычитаний и сдвигов). Подобная оптимизация обычно выполняется компилятором автоматически и не требует вмешательства программиста.
  • 在軟體工程領域,強度折減(Strength reduction)是一個編譯器最佳化技術,它將昂貴的運算以相同但是相對便宜的運算取代,最經典的範例就是將乘法轉換為使用迴圈的連續加法,這經常使用在陣列的定址。(,p.1) 強度折減的範例包含: * 使用迴圈及加法取代乘法運算 * 使用迴圈及乘法取代指數運算
http://purl.org/voc/vrank#hasRank
http://purl.org/li...ics/gold/hypernym
is Link from a Wikipage to another Wikipage of
is Wikipage disambiguates of
is foaf:primaryTopic of
Faceted Search & Find service v1.17_git39 as of Aug 09 2019


Alternative Linked Data Documents: PivotViewer | iSPARQL | ODE     Content Formats:       RDF       ODATA       Microdata      About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 07.20.3232 as of Aug 9 2019, on Linux (x86_64-generic-linux-glibc25), Single-Server Edition (61 GB total memory)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2019 OpenLink Software