KR100667509B1 - 컴퓨터 명령들의 멀티프로세싱 실행을 위한 방법들 및 장치 - Google Patents
컴퓨터 명령들의 멀티프로세싱 실행을 위한 방법들 및 장치 Download PDFInfo
- Publication number
- KR100667509B1 KR100667509B1 KR1020047013450A KR20047013450A KR100667509B1 KR 100667509 B1 KR100667509 B1 KR 100667509B1 KR 1020047013450 A KR1020047013450 A KR 1020047013450A KR 20047013450 A KR20047013450 A KR 20047013450A KR 100667509 B1 KR100667509 B1 KR 100667509B1
- Authority
- KR
- South Korea
- Prior art keywords
- sub
- main processor
- subprocessors
- instruction
- loop
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000008569 process Effects 0.000 claims description 29
- 238000004364 calculation method Methods 0.000 claims description 18
- 238000000605 extraction Methods 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 2
- 230000009471 action Effects 0.000 description 42
- 238000010586 diagram Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
- G06F9/325—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/20—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
- A63F2300/203—Image generating hardware
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
Claims (47)
- 프로그램의 명령 루프들의 프로세싱을 처리하도록 작동될 수 있고, 각각의 명령루프가 하나 이상의 서브 명령들을 포함하는 메인 프로세서; 및복수의 순차적 스테이지들에서 각각의 서브 명령을 프로세싱하도록 작동될 수 있고, 상기 서브 프로세서들 중 적어도 하나의 제 1 서브 프로세서가 상기 하나 이상의 서브 명령들을 상기 메인 프로세서로부터 순차적으로 수신하고 상기 서브 명령을 상기 서브 프로세서들 중 나중의 프로세서로 송신하기 위해 작동될 수 있고, 상기 서브 프로세서들 중 적어도 하나의 제 2 서브 프로세서는 상기 하나 이상의 서브 명령들을 상기 제 1 서브 프로세서로부터 순차적으로 수신하기 위해 작동될 수 있는 복수의 서브 프로세서들을 포함하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 복수의 순차적 스테이지들은 명령 프로세싱 파이프라인인 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 2 항에 있어서, 상기 명령 프로세싱 파이프라인은 하나 이상의 사이클들 동안 순차적으로 작동되는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 3 항에 있어서, 명령 디코딩은 제 1 사이클 동안 수행되고, 어드레스 계산은 제 2 사이클 동안 수행되고 그리고 명령 실행이 제 3 사이클 동안 수행되는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 4 항에 있어서, 라이트 백 오퍼레이션은 제 4 사이클 동안 수행되는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 복수의 서브 프로세서들은 인터럽트를 받아들이지 않는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 복수의 서브 프로세서들은 전자 메모리에 연결되어 작동될 수 있는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 7 항에 있어서, 상기 복수의 서브 프로세서들은 상기 전자 메모리에 직접 액세스하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 전자 메모리에 연결되어 작동될 수 있는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 9 항에 있어서, 상기 전자 메모리는 캐시 메모리인 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 제 1 프로세싱 장치의 일부분을 형성하고 상기 복수의 서브 프로세서들 중 적어도 일부의 서브 프로세서들은 제 2 프로세싱 장치의 일부분을 형성하고, 상기 제 2 프로세싱 장치는 상기 제 1 프로세싱 장치로부터 멀리 떨어져 있고 캐스케이딩되어 있는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 상기 하나 이상의 서브 프로세서들에 대한 이벤트를 검출하도록 작동될 수 있고, 상기 이벤트를 검출할 때 상기 메인 프로세서는 상기 하나 이상의 서브 명령들을 상기 서브 프로세서들 중 제 1 서브 프로세서에 순차적으로 출력하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 12 항에 있어서, 상기 메인 프로세서는 상기 명령 루프들 중 하나 이상을 초기화하는 것에 앞서서 상기 이벤트를 검출하고, 상기 메인 프로세서는 상기 복수의 서브 프로세서들의 작업을 제어하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 일반적인 컴퓨터 명령들을 실행할 수 있는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 인터럽트들을 받아들일 수 있는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 병렬 아키텍처를 이용하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 16 항에 있어서, 상기 병렬 아키텍처는 수퍼스칼라 아키텍처인 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 16 항에 있어서, 상기 병렬 아키텍처는 VLIW(very long instruction word) 아키텍처인 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 ALU 및 레지스터 파일을 포함하고, 상기 ALU 및 상기 레지스터 파일은 벡터 데이터를 취급하도록 작동될 수 있는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 메인 프로세서는 얼마나 많은 서브 프로세서들이 이용될 수 있는 지를 식별하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 20 항에 있어서, 상기 메인 프로세서는 수행되어야 할 루프 세트들의 개수 및 잔여 루프들의 개수를 식별하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 21 항에 있어서, 루프 세트들의 상기 개수가 0보다 더 크다면, 상기 메인 프로세서는 이용할 수 있는 상기 복수의 서브 프로세서들과 같은 루프 카운터를 설정하고, 상기 하나 이상의 서브 명령들을 상기 루프 카운터에 따라 상기 서브 프로세서들 중 제 1 서브 프로세서로 순차적으로 보내고, 그리고 주어진 명령 루프 내의 모든 서브 명령들이 상기 서브 프로세서들 중 제 1 서브 프로세서로 전해진 후에 루프 세트들의 상기 개수를 감소시키는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 21 항에 있어서, 루프 세트들의 상기 개수가 0과 같고 잔여 루프들의 상기 개수가 0보다 크다면, 메인 프로세서는 잔여 루프들의 상기 개수와 같은 루프 카운터를 설정하고 하나 이상의 서브 명령들을 상기 루프 카운터에 따라 상기 서브 프로세서들 중 제 1 서브 프로세서로 보내는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 1 항에 있어서, 상기 복수의 서브 프로세서들로부터 주어진 서브 프로세서는 새로운 서브 명령을 수신할 때 루프 카운터를 감소시키고, 상기 루프 카운터가 0보다 크다면 주어진 서브 프로세서는 상기 루프 카운터에 따라 상기 새로운 서브 명령을 상기 복수의 서브 프로세서들 중 나중의 서브 프로세서로 보내고, 상기 루프 카운터가 0이면 주어진 서브 프로세서는 상기 새로운 서브 명령을 상기 서브 프로세서들 중 나중의 서브 프로세서에 보내지 않는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 프로그램의 명령 루프들의 프로세싱을 하도록 작동될 수 있고, 각각의 명령루프가 하나 이상의 서브 명령들을 포함하는 메인 프로세서;복수의 순차적 스테이지들에서 각각의 서브 명령을 프로세싱하도록 작동될 수 있고, 상기 서브 프로세서들 중 적어도 하나의 제 1 서브 프로세서가 상기 하나 이상의 서브 명령들을 상기 메인 프로세서로부터 순차적으로 수신하고 상기 서브 명령을 상기 서브 프로세서들 중 나중의 프로세서로 송신하기 위해 작동될 수 있고, 상기 서브 프로세서들 중 적어도 하나의 제 2 서브 프로세서는 상기 하나 이상의 서브 명령들을 상기 제 1 서브 프로세서로부터 순차적으로 수신하기 위해 작동될 수 있는 복수의 서브 프로세서들; 및상기 하나 이상의 서브 명령들을 상기 메인 프로세서로부터 상기 서브 프로세서들 중 제 1 서브 프로세서로 제공하도록 작동될 수 있는 캐스케이딩 버스를 포함하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 25 항에 있어서, 상기 캐스케이딩 버스는 양방향인 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 26 항에 있어서, 상기 캐스케이딩 버스는 루프 데이터를 상기 메인 프로 세서로부터 상기 서브 프로세서들 중 제 1 서브 프로세서로 제공하고, 상기 루프 데이터는 하나 이상의 명령 코드, 디코딩된 정보, 셰이딩 데이터, 파라미터들 및 루프 카운터를 포함하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 26 항에 있어서, 상기 캐스케이딩 버스는 상태 정보 및 결과 정보 중 하나 이상을 상기 복수의 서브 프로세서들 중 하나 이상으로부터 상기 메인 프로세서로 제공하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 25 항에 있어서, 상기 메인 프로세서에 캐스케이딩되어 있는 추가 프로세서 장치를 더 포함하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 29 항에 있어서, 상기 추가 프로세서 장치는 추가 메인 프로세서를 포함하는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 30 항에 있어서, 상기 추가 메인 프로세서는 상기 복수의 서브 프로세서들 중 하나로서 작동되는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 제 31 항에 있어서, 상기 추가 메인 프로세서는 모드 선택 메커니즘에 의해 상기 복수의 서브 프로세서들 중 하나로서 작동하도록 선택되는 것을 특징으로 하는 멀티프로세싱 컴퓨터 시스템.
- 각각의 명령 루프가 하나 이상의 서브 명령들을 포함하고, 메인 프로세서를 이용하여 프로그램의 명령 루프들의 프로세싱을 처리하는 단계;제 1 서브 프로세서가 복수의 서브 프로세서들 중 하나이고, 상기 제 1 서브 프로세서에서 상기 메인 프로세서로부터 상기 하나 이상의 서브 명령들을 순차적으로 수신하는 단계;복수의 순차적 스테이지들에서 각각의 서브 명령을 프로세싱하는 단계;상기 명령 루프들 전부 보다 적은 개수의 명령 루프들이 완성되어 있다면 하나 이상의 서브 명령들을 상기 서브 프로세서 들 중 나중의 서브 프로세서로 보내는 단계; 및상기 하나 이상의 서브 명령들을 상기 서브 프로세서들 중 제 2 서브 프로세서에서 순차적으로 수신하는 단계를 포함하는 멀티프로세싱 방법.
- 제 33 항에 있어서, 상기 복수의 순차적 스테이지들이 명령 프로세싱 파이프라인인 것을 특징으로 하는 멀티프로세싱 방법.
- 제 34 항에 있어서, 하나 이상의 사이클들 동안 상기 명령 프로세싱 파이프라인을 순차적으로 작동하는 단계를 더 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 35 항에 있어서,제 1 서브 명령에 대한 명령 디코딩을 제 1 사이클에서 수행하는 단계;상기 제 1 서브 명령에 대한 어드레스 계산을 제 2 사이클에서 수행하는 단계; 및상기 제 1 서브 명령에 대한 명령 실행을 제 3 사이클에서 수행하는 단계를 더 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 36 항에 있어서, 제 4 사이클에서 상기 제 1 서브 명령에 대한 라이트 백 오퍼레이션을 수행하는 단계를 더 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 35 항에 있어서, 주어진 명령 루프가 제 1 서브 명령 및 제 2 서브 명령을 포함할 때 상기 멀티프로세싱 방법은:제 1 사이클에서 상기 제 1 서브 명령에 대한 명령 디코딩을 수행하는 단계;제 2 사이클에서 상기 제 1 서브 명령에 대한 어드레스 계산을 수행하는 단계;상기 제 2 사이클에서 상기 제 2 서브 명령에 대한 명령 디코딩을 수행하는 단계;제 3 사이클에서 상기 제 1 서브 명령에 대한 명령 실행을 수행하는 단계;상기 제 3 사이클에서 상기 제 2 서브 명령에 대한 어드레스 계산을 수행하 는 단계; 및제 4 사이클에서 상기 제 2 서브 명령에 대한 명령 실행을 수행하는 단계를 더 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 38 항에 있어서,상기 제 4 사이클에서 상기 제 1 서브 명령에 대한 라이트 백 오퍼레이션을 수행하는 단계; 및제 5 사이클에서 상기 제 2 서브 명령에 대한 상기 라이트 백 오퍼레이션을 수행하는 단계를 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 33 항에 있어서,상기 하나 이상의 서브 명령들을 순차적으로 수신하기에 앞서서 상기 메인 프로세서에서 이벤트를 검출하는 단계; 및상기 하나 이상의 서브 명령들을 상기 제 1 서브 프로세서로 순차적으로 출력하는 단계를 더 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 33 항에 있어서, 상기 메인 프로세서가 명령 추출 메커니즘을 포함할 때, 상기 명령 루프들을 상기 명령 추출 메커니즘을 이용하여 명령 메모리 캐시로부터 검색하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 33 항에 있어서,이용 가능한 서브 프로세서들의 개수를 결정하는 단계;수행되어야 할 루프 세트들의 개수를 식별하는 단계; 및수행되어야 할 잔여 루프들의 개수를 식별하는 단계를 더 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 42 항에 있어서, 루프 세트들의 상기 개수가 0 보다 더 크다면, 상기 멀티프로세싱 방법은:루프 카운터가 이용 가능한 상기 복수의 서브 프로세서들과 같도록 설정하는 단계;상기 하나 이상의 서브 명령들을 상기 루프 카운터에 따라 상기 서브 프로세서들 중 나중의 서브 프로세서에 보내는 단계; 및주어진 명령 루프에서의 서브 명령들 모두가 상기 제 1 서브 프로세서로 보내진 이후에 루프 세트들의 상기 개수를 감소시키는 단계를 더 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 42 항에 있어서, 루프 세트들의 상기 개수가 0과 같고 잔여 루프들의 개수가 0보다 더 크다면, 상기 멀티프로세싱 방법은:루프 카운터를 잔여 루프들의 상기 개수와 같도록 설정하는 단계; 및상기 하나 이상의 서브 명령들을 상기 루프 카운터에 따라 상기 서브 프로세 서들 중 나중의 서브 프로세서로 보내는 단계를 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 1 메인 프로세서는 제 1 장치에 위치되어 있고 제 2 메인 프로세서는 제 2 장치에 위치되어 있고, 상기 제 1 메인 프로세서 및 상기 제 2 메인 프로세서로부터 액티브 메인 프로세서를 선택하는 단계;각각의 명령 루프가 하나 이상의 서브 명령들을 포함하고, 상기 액티브 메인 프로세서를 이용하여 프로그램의 명령 루프들의 프로세싱을 처리하는 단계;제 1 서브 프로세서는 복수의 서브 프로세서들 중 하나이고 상기 하나 이상의 서브 명령들을 제 1 서브 프로세서에서 상기 액티브 메인 프로세서로부터 순차적으로 수신하는 단계;복수의 순차적 스테이지들에서 각각의 서브 명령을 프로세싱하는 단계;루프 카운터가 0보다 크다면 상기 하나 이상의 서브 명령들을 상기 서브 프로세서들 중 나중의 서브 프로세서에 보내는 단계; 및상기 서브 프로세서들 중 제 2 서브 프로세서에서 상기 하나 이상의 서브 명령들을 순차적으로 수신하는 단계를 포함하는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 45 항에 있어서, 상기 액티브 메인 프로세서를 선택하는 단계는 모드 선택 메커니즘을 이용하여 수행되는 것을 특징으로 하는 멀티프로세싱 방법.
- 제 45 항에 있어서, 상기 제 1 메인 프로세서는 상기 액티브 메인 프로세서로서 선택되고 상기 제 2 메인 프로세서는 상기 복수의 서브 프로세서들 중 하나로서 작동하는 것을 특징으로 하는 멀티프로세싱 방법.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US36387302P | 2002-03-13 | 2002-03-13 | |
US60/363,873 | 2002-03-13 | ||
US10/202,355 US7162620B2 (en) | 2002-03-13 | 2002-07-24 | Methods and apparatus for multi-processing execution of computer instructions |
US10/202,355 | 2002-07-24 | ||
PCT/US2002/033507 WO2003079206A1 (en) | 2002-03-13 | 2002-10-18 | Methods and apparatus for multi-processing execution of computer instructions |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040086462A KR20040086462A (ko) | 2004-10-08 |
KR100667509B1 true KR100667509B1 (ko) | 2007-01-10 |
Family
ID=28044473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020047013450A KR100667509B1 (ko) | 2002-03-13 | 2002-10-18 | 컴퓨터 명령들의 멀티프로세싱 실행을 위한 방법들 및 장치 |
Country Status (9)
Country | Link |
---|---|
US (1) | US7162620B2 (ko) |
EP (1) | EP1483675B1 (ko) |
JP (1) | JP3977340B2 (ko) |
KR (1) | KR100667509B1 (ko) |
AT (1) | ATE438145T1 (ko) |
AU (1) | AU2002335102A1 (ko) |
DE (1) | DE60233168D1 (ko) |
ES (1) | ES2330318T3 (ko) |
WO (1) | WO2003079206A1 (ko) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6825843B2 (en) * | 2002-07-18 | 2004-11-30 | Nvidia Corporation | Method and apparatus for loop and branch instructions in a programmable graphics pipeline |
US7533382B2 (en) * | 2002-10-30 | 2009-05-12 | Stmicroelectronics, Inc. | Hyperprocessor |
US7218291B2 (en) * | 2004-09-13 | 2007-05-15 | Nvidia Corporation | Increased scalability in the fragment shading pipeline |
KR100806274B1 (ko) * | 2005-12-06 | 2008-02-22 | 한국전자통신연구원 | 멀티 쓰레디드 프로세서 기반의 병렬 시스템을 위한 적응형실행 방법 |
US20090160863A1 (en) * | 2007-12-21 | 2009-06-25 | Michael Frank | Unified Processor Architecture For Processing General and Graphics Workload |
US9785700B2 (en) | 2008-02-11 | 2017-10-10 | Nuix Pty Ltd | Systems and methods for load-balancing by secondary processors in parallelized indexing |
US9928260B2 (en) | 2008-02-11 | 2018-03-27 | Nuix Pty Ltd | Systems and methods for scalable delocalized information governance |
WO2009102765A2 (en) | 2008-02-11 | 2009-08-20 | Nuix North America Inc. | Parallelization of electronic discovery document indexing |
US8151090B2 (en) * | 2009-02-17 | 2012-04-03 | Samsung Electronics Co., Ltd. | Sequentially propagating instructions of thread through serially coupled PEs for concurrent processing respective thread on different data and synchronizing upon branch |
JP2012252374A (ja) * | 2011-05-31 | 2012-12-20 | Renesas Electronics Corp | 情報処理装置 |
US9529599B2 (en) * | 2012-02-13 | 2016-12-27 | William Erik Anderson | Dynamic propagation with iterative pipeline processing |
JP5831316B2 (ja) * | 2012-03-19 | 2015-12-09 | 富士通株式会社 | 並列処理装置 |
US10826930B2 (en) | 2014-07-22 | 2020-11-03 | Nuix Pty Ltd | Systems and methods for parallelized custom data-processing and search |
KR20160054850A (ko) * | 2014-11-07 | 2016-05-17 | 삼성전자주식회사 | 다수의 프로세서들을 운용하는 장치 및 방법 |
US11200249B2 (en) | 2015-04-16 | 2021-12-14 | Nuix Limited | Systems and methods for data indexing with user-side scripting |
CN109690309B (zh) * | 2016-09-08 | 2022-10-25 | 株式会社岛津制作所 | 气相色谱仪 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5081575A (en) * | 1987-11-06 | 1992-01-14 | Oryx Corporation | Highly parallel computer architecture employing crossbar switch with selectable pipeline delay |
US5522083A (en) * | 1989-11-17 | 1996-05-28 | Texas Instruments Incorporated | Reconfigurable multi-processor operating in SIMD mode with one processor fetching instructions for use by remaining processors |
US6311286B1 (en) * | 1993-04-30 | 2001-10-30 | Nec Corporation | Symmetric multiprocessing system with unified environment and distributed system functions |
US5809340A (en) * | 1993-04-30 | 1998-09-15 | Packard Bell Nec | Adaptively generating timing signals for access to various memory devices based on stored profiles |
US6219773B1 (en) * | 1993-10-18 | 2001-04-17 | Via-Cyrix, Inc. | System and method of retiring misaligned write operands from a write buffer |
US5838987A (en) * | 1995-10-06 | 1998-11-17 | National Semiconductor Corporation | Processor for eliminating external isochronous subsystems |
US6088783A (en) * | 1996-02-16 | 2000-07-11 | Morton; Steven G | DPS having a plurality of like processors controlled in parallel by an instruction word, and a control processor also controlled by the instruction word |
US5764934A (en) | 1996-07-03 | 1998-06-09 | Intel Corporation | Processor subsystem for use with a universal computer architecture |
EP1359501A3 (en) * | 1997-10-02 | 2007-11-21 | Koninklijke Philips Electronics N.V. | A processing device for executing virtual machine instructions |
US6101592A (en) * | 1998-12-18 | 2000-08-08 | Billions Of Operations Per Second, Inc. | Methods and apparatus for scalable instruction set architecture with dynamic compact instructions |
US6212617B1 (en) * | 1998-05-13 | 2001-04-03 | Microsoft Corporation | Parallel processing method and system using a lazy parallel data type to reduce inter-processor communication |
US6269440B1 (en) * | 1999-02-05 | 2001-07-31 | Agere Systems Guardian Corp. | Accelerating vector processing using plural sequencers to process multiple loop iterations simultaneously |
JP3946393B2 (ja) | 1999-10-19 | 2007-07-18 | 株式会社東芝 | 階層構造をもつ並列計算機 |
-
2002
- 2002-07-24 US US10/202,355 patent/US7162620B2/en active Active
- 2002-10-18 DE DE60233168T patent/DE60233168D1/de not_active Expired - Lifetime
- 2002-10-18 EP EP02807083A patent/EP1483675B1/en not_active Expired - Lifetime
- 2002-10-18 AU AU2002335102A patent/AU2002335102A1/en not_active Abandoned
- 2002-10-18 AT AT02807083T patent/ATE438145T1/de not_active IP Right Cessation
- 2002-10-18 WO PCT/US2002/033507 patent/WO2003079206A1/en active Application Filing
- 2002-10-18 JP JP2003577137A patent/JP3977340B2/ja not_active Expired - Lifetime
- 2002-10-18 ES ES02807083T patent/ES2330318T3/es not_active Expired - Lifetime
- 2002-10-18 KR KR1020047013450A patent/KR100667509B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
AU2002335102A1 (en) | 2003-09-29 |
DE60233168D1 (de) | 2009-09-10 |
EP1483675B1 (en) | 2009-07-29 |
JP2005520249A (ja) | 2005-07-07 |
EP1483675A4 (en) | 2007-02-14 |
US20030177343A1 (en) | 2003-09-18 |
KR20040086462A (ko) | 2004-10-08 |
ATE438145T1 (de) | 2009-08-15 |
US7162620B2 (en) | 2007-01-09 |
WO2003079206A1 (en) | 2003-09-25 |
EP1483675A1 (en) | 2004-12-08 |
ES2330318T3 (es) | 2009-12-09 |
JP3977340B2 (ja) | 2007-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100667509B1 (ko) | 컴퓨터 명령들의 멀티프로세싱 실행을 위한 방법들 및 장치 | |
US8935515B2 (en) | Method and apparatus for vector execution on a scalar machine | |
JP6660991B2 (ja) | マルチスレッドプロセッサでのタスクのスケジューリング | |
JP3881763B2 (ja) | データ処理装置 | |
US5604878A (en) | Method and apparatus for avoiding writeback conflicts between execution units sharing a common writeback path | |
US20110296141A1 (en) | Persistent finite state machines from pre-compiled machine code instruction sequences | |
CN108780395B (zh) | 矢量预测指令 | |
US7475393B2 (en) | Method and apparatus for parallel computations with incomplete input operands | |
JP2007272895A (ja) | コンピュータプロセッサアレイの操作方法および装置 | |
US6971000B1 (en) | Use of software hint for branch prediction in the absence of hint bit in the branch instruction | |
US6044453A (en) | User programmable circuit and method for data processing apparatus using a self-timed asynchronous control structure | |
US6910123B1 (en) | Processor with conditional instruction execution based upon state of corresponding annul bit of annul code | |
US20030120900A1 (en) | Apparatus and method for a software pipeline loop procedure in a digital signal processor | |
US7543135B2 (en) | Processor and method for selectively processing instruction to be read using instruction code already in pipeline or already stored in prefetch buffer | |
US7415601B2 (en) | Method and apparatus for elimination of prolog and epilog instructions in a vector processor using data validity tags and sink counters | |
JPH096614A (ja) | データ処理装置 | |
US20070074186A1 (en) | Method and system for performing reassociation in software loops | |
KR102379886B1 (ko) | 벡터 명령 처리 | |
JPH0384632A (ja) | データ処理装置 | |
US9135006B1 (en) | Early execution of conditional branch instruction with pc operand at which point target is fetched | |
JP3547562B2 (ja) | マイクロプロセッサ | |
US20090119492A1 (en) | Data Processing Apparatus and Method for Handling Procedure Call Instructions | |
KR100244210B1 (ko) | 멀티-스테이지 파이프라인 구조를 갖는 마이크로 프로세서 디자인방법 | |
JP2825315B2 (ja) | 情報処理装置 | |
EP0365187A2 (en) | Apparatus for selective execution of instructions following a branch instruction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121224 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20131224 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20141222 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20151223 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20161227 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20171226 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20181220 Year of fee payment: 13 |
|
FPAY | Annual fee payment |
Payment date: 20191224 Year of fee payment: 14 |