1 |
1
적어도 하나의 프로세서에 의해 수행되는, in-place 연산을 포함한 프로그램에 대한 중간표현을 생성하는 방법에 있어서, 상기 프로그램으로부터 입출력을 위한 데이터에 대한 정보 및 연산에 대한 정보를 추출하는 단계;상기 추출된 데이터에 대한 정보 및 상기 추출된 연산에 대한 정보로부터 in-place 연산이 존재하는지 여부를 판정하는 단계;상기 in-place 연산이 존재하는 경우, 상기 추출된 데이터에 대한 정보, 상기 추출된 연산에 대한 정보 및 상기 in-place 연산과 연관된 생성 규칙을 이용하여 중간표현을 생성하는 단계; 및상기 추출된 입출력을 위한 데이터 및 상기 중간표현에 포함된 데이터 사이의 대응 관계를 데이터베이스에 저장하는 단계를 포함하고,상기 중간표현을 생성하는 단계는,상기 in-place 연산의 출력 데이터에 대응하는, 상기 중간표현의 연산의 출력 데이터를 생성함으로써, 상기 중간표현을 생성하는 단계를 포함하고, 상기 중간표현의 연산의 출력 데이터의 데이터명은, 상기 in-place 연산의 입력 데이터의 데이터명과 상이하며, 상기 데이터베이스에 저장하는 단계는,상기 in-place 연산의 입력 데이터의 제1 크기가 상기 in-place 연산의 출력 데이터의 제2 크기와 상이한 경우, 상기 in-place 연산의 입력 데이터의 포인터가 상기 in-place 연산의 출력 데이터에 대응하는 상기 중간표현의 연산의 출력 데이터를 가리키도록 상기 중간표현에 포함된 데이터 사이의 대응 관계를 변경함으로써, 상기 데이터베이스를 업데이트하는 단계; 및상기 in-place 연산의 입력 데이터에 상기 제1 크기로 되돌릴 수 있는 연산에 대한 정보를 연관시켜서 저장하는 단계를 포함하고,상기 in-place의 입력 데이터는 in-place 연산 후의 출력 데이터로 대체되는 데이터인, 중간표현을 생성하는 방법
|
2 |
2
삭제
|
3 |
3
삭제
|
4 |
4
삭제
|
5 |
5
삭제
|
6 |
6
삭제
|
7 |
7
삭제
|
8 |
8
제1항에 있어서,상기 중간표현을 생성하는 단계는, 상기 in-place 연산의 후속 연산으로서, 상기 in-place 연산의 입력 데이터의 제1 크기를 이용하는 연산이 존재하는 경우, 상기 in-place 연산의 입력 데이터의 제2 크기를 상기 제1 크기로 되돌릴 수 있는 연산을 이용하여 상기 중간표현을 생성하는 단계를 포함하는, 중간표현을 생성하는 방법
|
9 |
9
제8항에 있어서, 상기 데이터베이스에 저장하는 단계는,상기 in-place 연산의 후속 연산이 후속 in-place 연산인 경우, 상기 in-place 연산의 입력 데이터 및 상기 in-place 연산의 출력 데이터의 각각의 포인터를 상기 후속 in-place 연산의 출력 데이터에 대응하는 상기 중간표현의 연산의 출력 데이터를 가리킴으로써, 상기 in-place 연산의 출력 데이터의 제2 크기를 상기 제1 크기로 변경하는 단계; 및상기 in-place 연산의 출력 데이터에 상기 제2 크기로 되돌릴 수 있는 정보를 연관시켜서 저장하는 단계를 포함하는, 중간표현을 생성하는 방법
|
10 |
10
제1항, 제8항 및 제9항 중 어느 한 항에 따른 in-place 연산을 포함한 프로그램에 대한 중간표현을 생성하는 방법을 컴퓨터에서 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램
|
11 |
11
정보 처리 시스템으로서,메모리; 및상기 메모리와 연결되고, 상기 메모리에 포함된 컴퓨터 판독 가능한 적어도 하나의 프로그램을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고,상기 적어도 하나의 프로그램은,상기 프로그램으로부터 입출력을 위한 데이터에 대한 정보 및 연산에 대한 정보를 추출하고,상기 추출된 데이터에 대한 정보 및 상기 추출된 연산에 대한 정보로부터 in-place 연산이 존재하는지 여부를 판정하고,상기 in-place 연산이 존재하는 경우, 상기 추출된 데이터에 대한 정보, 상기 추출된 연산에 대한 정보 및 상기 in-place 연산과 연관된 생성 규칙을 이용하여 중간표현을 생성하고,상기 추출된 입출력을 위한 데이터 및 상기 중간표현에 포함된 데이터 사이의 대응 관계를 데이터베이스에 저장하기 위한 명령어들을 포함하고,상기 중간표현을 생성하는 것은,상기 in-place 연산의 출력 데이터에 대응하는, 상기 중간표현의 연산의 출력 데이터를 생성함으로써, 상기 중간표현을 생성하는 것을 포함하고,상기 중간표현의 연산의 출력 데이터의 데이터명은, 상기 in-place 연산의 입력 데이터의 데이터명과 상이하며, 상기 데이터베이스에 저장하는 것은,상기 in-place 연산의 입력 데이터의 제1 크기가 상기 in-place 연산의 출력 데이터의 제2 크기와 상이한 경우, 상기 in-place 연산의 입력 데이터의 포인터가 상기 in-place 연산의 출력 데이터에 대응하는 상기 중간표현의 연산의 출력 데이터를 가리키도록 상기 중간표현에 포함된 데이터 사이의 대응 관계를 변경함으로써, 상기 데이터베이스를 업데이트하는 것; 및상기 in-place 연산의 입력 데이터에 상기 제1 크기로 되돌릴 수 있는 연산에 대한 정보를 연관시켜서 저장하는 것을 포함하고,상기 in-place의 입력 데이터는 in-place 연산 후의 출력 데이터로 대체되는 데이터인,정보 처리 시스템
|