Matches in DBpedia 2016-04 for { <http://dbpedia.org/resource/Instruction-level_parallelism> ?p ?o }
Showing triples 1 to 75 of
75
with 100 triples per page.
- Instruction-level_parallelism abstract "Instruction-level parallelism (ILP) is a measure of how many of the operations in a computer program can be performed simultaneously. The potential overlap among instructions is called instruction level parallelism.There are two approaches to instruction level parallelism: Hardware SoftwareHardware level works upon dynamic parallelism whereas, the software level works on static parallelism. The Pentium processor works on the dynamic sequence of parallel execution but the Itanium processor works on the static level parallelism.Consider the following program: e = a + b f = c + d m = e * fOperation 3 depends on the results of operations 1 and 2, so it cannot be calculated until both of them are completed. However, operations 1 and 2 do not depend on any other operation, so they can be calculated simultaneously. If we assume that each operation can be completed in one unit of time then these three instructions can be completed in a total of two units of time, giving an ILP of 3/2.A goal of compiler and processor designers is to identify and take advantage of as much ILP as possible. Ordinary programs are typically written under a sequential execution model where instructions execute one after the other and in the order specified by the programmer. ILP allows the compiler and the processor to overlap the execution of multiple instructions or even to change the order in which instructions are executed.How much ILP exists in programs is very application specific. In certain fields, such as graphics and scientific computing the amount can be very large. However, workloads such as cryptography may exhibit much less parallelism.Micro-architectural techniques that are used to exploit ILP include:Instruction pipelining where the execution of multiple instructions can be partially overlapped.Superscalar execution, VLIW, and the closely related explicitly parallel instruction computing concepts, in which multiple execution units are used to execute multiple instructions in parallel.Out-of-order execution where instructions execute in any order that does not violate data dependencies. Note that this technique is independent of both pipelining and superscalar. Current implementations of out-of-order execution dynamically (i.e., while the program is executing and without any help from the compiler) extract ILP from ordinary programs. An alternative is to extract this parallelism at compile time and somehow convey this information to the hardware. Due to the complexity of scaling the out-of-order execution technique, the industry has re-examined instruction sets which explicitly encode multiple independent operations per instruction.Register renaming which refers to a technique used to avoid unnecessary serialization of program operations imposed by the reuse of registers by those operations, used to enable out-of-order execution.Speculative execution which allow the execution of complete instructions or parts of instructions before being certain whether this execution should take place. A commonly used form of speculative execution is control flow speculation where instructions past a control flow instruction (e.g., a branch) are executed before the target of the control flow instruction is determined. Several other forms of speculative execution have been proposed and are in use including speculative execution driven by value prediction, memory dependence prediction and cache latency prediction.Branch prediction which is used to avoid stalling for control dependencies to be resolved. Branch prediction is used with speculative execution.It is known that the ILP is exploited by both the compiler and hardware support but the compiler also provides inherit and implicit ILP in programs to hardware by compilation optimization. Some optimization techniques for extracting available ILP in programs would include scheduling, register allocation/renaming, and memory access optimization. Dataflow architectures are another class of architectures where ILP is explicitly specified, for a recent example see the TRIPS architecture.Some limits to ILP are compiler sophistication and hardware sophistication. To overcome these limits, new and different hardware techniques may be able to overcome limitations. However, unlikely such advances when coupled with realistic hardware will overcome these limits in the near future.In recent years, ILP techniques have been used to provide performance improvements in spite of the growing disparity between processor operating frequencies and memory access times (early ILP designs such as the IBM System/360 Model 91 used ILP techniques to overcome the limitations imposed by a relatively small register file). Presently, a cache miss penalty to main memory costs several hundreds of CPU cycles. While in principle it is possible to use ILP to tolerate even such memory latencies the associated resource and power dissipation costs are disproportionate. Moreover, the complexity and often the latency of the underlying hardware structures results in reduced operating frequency further reducing any benefits. Hence, the aforementioned techniques prove inadequate to keep the CPU from stalling for the off-chip data. Instead, the industry is heading towards exploiting higher levels of parallelism that can be exploited through techniques such as multiprocessing and multithreading.".
- Instruction-level_parallelism wikiPageExternalLink memory-wall-survey.pdf.
- Instruction-level_parallelism wikiPageExternalLink scribd.
- Instruction-level_parallelism wikiPageExternalLink geek.html.
- Instruction-level_parallelism wikiPageID "245960".
- Instruction-level_parallelism wikiPageLength "6566".
- Instruction-level_parallelism wikiPageOutDegree "35".
- Instruction-level_parallelism wikiPageRevisionID "705214750".
- Instruction-level_parallelism wikiPageWikiLink Branch_predictor.
- Instruction-level_parallelism wikiPageWikiLink Cache_latency_prediction.
- Instruction-level_parallelism wikiPageWikiLink Category:Instruction_processing.
- Instruction-level_parallelism wikiPageWikiLink Category:Parallel_computing.
- Instruction-level_parallelism wikiPageWikiLink Central_processing_unit.
- Instruction-level_parallelism wikiPageWikiLink Compile_time.
- Instruction-level_parallelism wikiPageWikiLink Compiler.
- Instruction-level_parallelism wikiPageWikiLink Computer_hardware.
- Instruction-level_parallelism wikiPageWikiLink Computer_program.
- Instruction-level_parallelism wikiPageWikiLink Cryptography.
- Instruction-level_parallelism wikiPageWikiLink Data_dependency.
- Instruction-level_parallelism wikiPageWikiLink Dataflow_architecture.
- Instruction-level_parallelism wikiPageWikiLink Dynamic_programming.
- Instruction-level_parallelism wikiPageWikiLink Execution_unit.
- Instruction-level_parallelism wikiPageWikiLink Explicitly_parallel_instruction_computing.
- Instruction-level_parallelism wikiPageWikiLink 360.
- Instruction-level_parallelism wikiPageWikiLink Instruction_pipelining.
- Instruction-level_parallelism wikiPageWikiLink Instruction_set.
- Instruction-level_parallelism wikiPageWikiLink Itanium.
- Instruction-level_parallelism wikiPageWikiLink Memory-level_parallelism.
- Instruction-level_parallelism wikiPageWikiLink Memory_dependence_prediction.
- Instruction-level_parallelism wikiPageWikiLink Multiprocessing.
- Instruction-level_parallelism wikiPageWikiLink Multithreading_(computer_architecture).
- Instruction-level_parallelism wikiPageWikiLink Out-of-order_execution.
- Instruction-level_parallelism wikiPageWikiLink Pentium.
- Instruction-level_parallelism wikiPageWikiLink Register_renaming.
- Instruction-level_parallelism wikiPageWikiLink Run_time_(program_lifecycle_phase).
- Instruction-level_parallelism wikiPageWikiLink Software.
- Instruction-level_parallelism wikiPageWikiLink Speculative_execution.
- Instruction-level_parallelism wikiPageWikiLink Static_parallelism.
- Instruction-level_parallelism wikiPageWikiLink Superscalar_processor.
- Instruction-level_parallelism wikiPageWikiLink TRIPS_architecture.
- Instruction-level_parallelism wikiPageWikiLink Value_prediction.
- Instruction-level_parallelism wikiPageWikiLink Very_long_instruction_word.
- Instruction-level_parallelism wikiPageWikiLinkText "''ILP''".
- Instruction-level_parallelism wikiPageWikiLinkText "ILP".
- Instruction-level_parallelism wikiPageWikiLinkText "Instruction-level Parallelism".
- Instruction-level_parallelism wikiPageWikiLinkText "Instruction-level parallelism".
- Instruction-level_parallelism wikiPageWikiLinkText "instruction-level parallelism".
- Instruction-level_parallelism wikiPageWikiLinkText "instruction-level".
- Instruction-level_parallelism wikiPageWikiLinkText "parallel".
- Instruction-level_parallelism wikiPageWikiLinkText "parallelism in a single instruction stream".
- Instruction-level_parallelism wikiPageUsesTemplate Template:CPU_technologies.
- Instruction-level_parallelism wikiPageUsesTemplate Template:Clarify.
- Instruction-level_parallelism wikiPageUsesTemplate Template:Parallel_Computing.
- Instruction-level_parallelism wikiPageUsesTemplate Template:Reflist.
- Instruction-level_parallelism subject Category:Instruction_processing.
- Instruction-level_parallelism subject Category:Parallel_computing.
- Instruction-level_parallelism hypernym Measure.
- Instruction-level_parallelism type Software.
- Instruction-level_parallelism comment "Instruction-level parallelism (ILP) is a measure of how many of the operations in a computer program can be performed simultaneously. The potential overlap among instructions is called instruction level parallelism.There are two approaches to instruction level parallelism: Hardware SoftwareHardware level works upon dynamic parallelism whereas, the software level works on static parallelism.".
- Instruction-level_parallelism label "Instruction-level parallelism".
- Instruction-level_parallelism sameAs Q2714055.
- Instruction-level_parallelism sameAs توازي_على_مستوى_التعليمة.
- Instruction-level_parallelism sameAs Instruction_level_parallelism.
- Instruction-level_parallelism sameAs 命令レベルの並列性.
- Instruction-level_parallelism sameAs Instruction_Level_Parallelism.
- Instruction-level_parallelism sameAs m.01klf8.
- Instruction-level_parallelism sameAs Параллелизм_на_уровне_команд.
- Instruction-level_parallelism sameAs Instruction_level_parallelism.
- Instruction-level_parallelism sameAs Паралелизам_на_нивоу_наредбе.
- Instruction-level_parallelism sameAs Komut_seviyesi_paralellik.
- Instruction-level_parallelism sameAs Паралелізм_на_рівні_команд.
- Instruction-level_parallelism sameAs Q2714055.
- Instruction-level_parallelism sameAs 指令層級平行.
- Instruction-level_parallelism wasDerivedFrom Instruction-level_parallelism?oldid=705214750.
- Instruction-level_parallelism isPrimaryTopicOf Instruction-level_parallelism.