Ayguadé et al., 1995 - Google Patents
Data redistribution in an automatic data distribution toolAyguadé et al., 1995
- Document ID
- 14039442617243305036
- Author
- Ayguadé E
- Garcia J
- Girones M
- Grande M
- Labarta J
- Publication year
- Publication venue
- International Workshop on Languages and Compilers for Parallel Computing
External Links
Snippet
Data distribution is one of the key aspects to consider in a parallelizing environment for Massive Parallel Processors. Automatic data distribution proposals may be categorized as either static or dynamic, depending on whether the distribution of the arrays is allowed to …
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformations of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
- G06F8/451—Code distribution
- G06F8/452—Loops
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformations of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
- G06F8/4441—Reducing the execution time required by the program code
- G06F8/4442—Reducing the number of cache misses; Data prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformations of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
- G06F8/456—Parallelism detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformations of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/445—Exploiting fine grain parallelism, i.e. parallelism at instruction level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformations of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
- G06F8/433—Dependency analysis; Data or control flow analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Programme initiating; Programme switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/30—Arrangements for executing machine-instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
- G06F9/3889—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/50—Computer-aided design
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5889999A (en) | Method and apparatus for sequencing computer instruction execution in a data processing system | |
| US6381739B1 (en) | Method and apparatus for hierarchical restructuring of computer code | |
| Gupta et al. | PARADIGM: A compiler for automatic data distribution on multicomputers | |
| US6550059B1 (en) | Method for generating optimized vector instructions from high level programming languages | |
| US5787284A (en) | Improving memory layout based on connectivity considerations | |
| US6523173B1 (en) | Method and apparatus for allocating registers during code compilation using different spill strategies to evaluate spill cost | |
| Garcia et al. | A novel approach towards automatic data distribution | |
| Kremer et al. | Automatic data layout for distributed-memory machines in the D programming environment | |
| Ayguadé et al. | Data redistribution in an automatic data distribution tool | |
| Ayguade et al. | Detecting and using affinity in an automatic data distribution tool | |
| Kessler | Pattern-driven automatic program transformation and parallelization | |
| Ayguadé et al. | Data Redistribution | |
| Grande et al. | Data Redistribution in an Automatic Data Distribution Tool? | |
| Ayguade et al. | DDT: a research tool for automatic data distribution in High Performance Fortran | |
| Zhuang et al. | A framework for parallelizing load/stores on embedded processors | |
| Boudet et al. | Alignment and distribution is NOT (always) NP-hard | |
| Grande et al. | DDT: A Research Tool for Automatic Data Distribution in HPF | |
| Balasundaram et al. | A static performance estimator in the Fortran D programming system | |
| Bouchitte et al. | Evaluating array expressions on massively parallel machines with communication/computation overlap | |
| Cosnard et al. | Automatic coarse-grained parallelization techniques | |
| Berman | The mapping problem in parallel computation | |
| Onbasçioglu et al. | Optimization of data distribution and processor allocation problem using simulated annealing | |
| Garcia et al. | Using a 0–1 Integer Programming Model for Automatic Static Data Distribution | |
| Wolfe et al. | Automatic array alignment for distributed memory multicomputers | |
| Su | Automating Parallelization of Regular Computations for Distributed-Memory Multicomputers |