KR102443089B1 - 컴퓨팅 디바이스에서의 동기화 - Google Patents
컴퓨팅 디바이스에서의 동기화 Download PDFInfo
- Publication number
- KR102443089B1 KR102443089B1 KR1020177012734A KR20177012734A KR102443089B1 KR 102443089 B1 KR102443089 B1 KR 102443089B1 KR 1020177012734 A KR1020177012734 A KR 1020177012734A KR 20177012734 A KR20177012734 A KR 20177012734A KR 102443089 B1 KR102443089 B1 KR 102443089B1
- Authority
- KR
- South Korea
- Prior art keywords
- loop
- instruction
- function
- hot
- pup
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000006870 function Effects 0.000 claims abstract description 260
- 238000000034 method Methods 0.000 claims abstract description 170
- 230000008569 process Effects 0.000 claims abstract description 132
- 230000015654 memory Effects 0.000 claims abstract description 94
- 238000012544 monitoring process Methods 0.000 claims abstract description 50
- 230000009466 transformation Effects 0.000 claims abstract description 17
- 230000004044 response Effects 0.000 claims abstract description 9
- 238000001514 detection method Methods 0.000 claims description 39
- 230000002093 peripheral effect Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- CYJRNFFLTBEQSQ-UHFFFAOYSA-N 8-(3-methyl-1-benzothiophen-5-yl)-N-(4-methylsulfonylpyridin-3-yl)quinoxalin-6-amine Chemical compound CS(=O)(=O)C1=C(C=NC=C1)NC=1C=C2N=CC=NC2=C(C=1)C=1C=CC2=C(C(=CS2)C)C=1 CYJRNFFLTBEQSQ-UHFFFAOYSA-N 0.000 description 5
- 238000012002 interactive response technology Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000001931 thermography Methods 0.000 description 5
- KVCQTKNUUQOELD-UHFFFAOYSA-N 4-amino-n-[1-(3-chloro-2-fluoroanilino)-6-methylisoquinolin-5-yl]thieno[3,2-d]pyrimidine-7-carboxamide Chemical compound N=1C=CC2=C(NC(=O)C=3C4=NC=NC(N)=C4SC=3)C(C)=CC=C2C=1NC1=CC=CC(Cl)=C1F KVCQTKNUUQOELD-UHFFFAOYSA-N 0.000 description 3
- 230000002730 additional effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- VCGRFBXVSFAGGA-UHFFFAOYSA-N (1,1-dioxo-1,4-thiazinan-4-yl)-[6-[[3-(4-fluorophenyl)-5-methyl-1,2-oxazol-4-yl]methoxy]pyridin-3-yl]methanone Chemical compound CC=1ON=C(C=2C=CC(F)=CC=2)C=1COC(N=C1)=CC=C1C(=O)N1CCS(=O)(=O)CC1 VCGRFBXVSFAGGA-UHFFFAOYSA-N 0.000 description 1
- MOWXJLUYGFNTAL-DEOSSOPVSA-N (s)-[2-chloro-4-fluoro-5-(7-morpholin-4-ylquinazolin-4-yl)phenyl]-(6-methoxypyridazin-3-yl)methanol Chemical compound N1=NC(OC)=CC=C1[C@@H](O)C1=CC(C=2C3=CC=C(C=C3N=CN=2)N2CCOCC2)=C(F)C=C1Cl MOWXJLUYGFNTAL-DEOSSOPVSA-N 0.000 description 1
- ABDDQTDRAHXHOC-QMMMGPOBSA-N 1-[(7s)-5,7-dihydro-4h-thieno[2,3-c]pyran-7-yl]-n-methylmethanamine Chemical compound CNC[C@@H]1OCCC2=C1SC=C2 ABDDQTDRAHXHOC-QMMMGPOBSA-N 0.000 description 1
- HCDMJFOHIXMBOV-UHFFFAOYSA-N 3-(2,6-difluoro-3,5-dimethoxyphenyl)-1-ethyl-8-(morpholin-4-ylmethyl)-4,7-dihydropyrrolo[4,5]pyrido[1,2-d]pyrimidin-2-one Chemical compound C=1C2=C3N(CC)C(=O)N(C=4C(=C(OC)C=C(OC)C=4F)F)CC3=CN=C2NC=1CN1CCOCC1 HCDMJFOHIXMBOV-UHFFFAOYSA-N 0.000 description 1
- WNEODWDFDXWOLU-QHCPKHFHSA-N 3-[3-(hydroxymethyl)-4-[1-methyl-5-[[5-[(2s)-2-methyl-4-(oxetan-3-yl)piperazin-1-yl]pyridin-2-yl]amino]-6-oxopyridin-3-yl]pyridin-2-yl]-7,7-dimethyl-1,2,6,8-tetrahydrocyclopenta[3,4]pyrrolo[3,5-b]pyrazin-4-one Chemical compound C([C@@H](N(CC1)C=2C=NC(NC=3C(N(C)C=C(C=3)C=3C(=C(N4C(C5=CC=6CC(C)(C)CC=6N5CC4)=O)N=CC=3)CO)=O)=CC=2)C)N1C1COC1 WNEODWDFDXWOLU-QHCPKHFHSA-N 0.000 description 1
- AYCPARAPKDAOEN-LJQANCHMSA-N N-[(1S)-2-(dimethylamino)-1-phenylethyl]-6,6-dimethyl-3-[(2-methyl-4-thieno[3,2-d]pyrimidinyl)amino]-1,4-dihydropyrrolo[3,4-c]pyrazole-5-carboxamide Chemical compound C1([C@H](NC(=O)N2C(C=3NN=C(NC=4C=5SC=CC=5N=C(C)N=4)C=3C2)(C)C)CN(C)C)=CC=CC=C1 AYCPARAPKDAOEN-LJQANCHMSA-N 0.000 description 1
- LXRZVMYMQHNYJB-UNXOBOICSA-N [(1R,2S,4R)-4-[[5-[4-[(1R)-7-chloro-1,2,3,4-tetrahydroisoquinolin-1-yl]-5-methylthiophene-2-carbonyl]pyrimidin-4-yl]amino]-2-hydroxycyclopentyl]methyl sulfamate Chemical compound CC1=C(C=C(S1)C(=O)C1=C(N[C@H]2C[C@H](O)[C@@H](COS(N)(=O)=O)C2)N=CN=C1)[C@@H]1NCCC2=C1C=C(Cl)C=C2 LXRZVMYMQHNYJB-UNXOBOICSA-N 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- XGVXKJKTISMIOW-ZDUSSCGKSA-N simurosertib Chemical compound N1N=CC(C=2SC=3C(=O)NC(=NC=3C=2)[C@H]2N3CCC(CC3)C2)=C1C XGVXKJKTISMIOW-ZDUSSCGKSA-N 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30087—Synchronisation or serialisation instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/52—Binary to binary
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30065—Loop control instructions; iterative instructions, e.g. LOOP, REPEAT
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/825—Indexing scheme relating to error detection, to error correction, and to monitoring the problem or solution involving locking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/88—Monitoring involving counting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Microcomputers (AREA)
- Debugging And Monitoring (AREA)
- Power Sources (AREA)
- Advance Control (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Electric Clocks (AREA)
- Mobile Radio Communication Systems (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
도 1은 본 개시내용의 다양한 실시예들에 따른 컴퓨팅 디바이스의 기능 블록도를 예시한다.
도 2는 본 개시내용의 다양한 실시예들에 따른 동기화 동작들의 흐름도이다.
도 3은 본 개시내용의 다양한 실시예들에 따른 스핀 루프 식별 동작들의 흐름도이다.
하기의 상세한 설명은 예시적 실시예들을 참조하여 진행되지만, 그것의 많은 대안들, 수정들, 및 변형들은 본 기술분야의 통상의 기술자들에게 분명할 것이다.
Claims (24)
- 프로세스를 실행하는 프로세서 - 상기 프로세서는 적어도 하나의 코어를 포함함 -;
상기 프로세스를 저장하는 메모리; 및
로직
을 포함하고, 상기 로직은:
검출 이용 임계값(UT)보다 더 큰 플랫폼 프로세서 이용 파라미터(PUP)에 응답하여 성능 감시 데이터를 취득하고 - 상기 성능 감시 데이터는 프로세서 이용 데이터 및 명령 회수 데이터 중 적어도 하나를 포함함 -;
적어도 부분적으로, 검출된 핫 함수(hot function) 및/또는 검출된 핫 루프 중 적어도 하나를 상기 취득된 성능 감시 데이터를 사용하여 식별함으로써 상기 프로세스와 연관된 스핀 루프를 식별하고;
수정된 프로세스 부분을 생성하기 위해 이진 변환을 사용하여 상기 식별된 스핀 루프를 수정하고; 그리고
상기 식별된 스핀 루프로부터 상기 수정된 프로세스 부분으로 재지향을 구현하는 장치. - 제1항에 있어서, 상기 검출된 핫 함수 및/또는 상기 검출된 핫 루프 중 적어도 하나는 상기 성능 감시 데이터와 관련되는 하나 이상의 성능 프로파일(들)에 적어도 부분적으로 기초하여 식별되는 장치.
- 제1항에 있어서, 상기 검출된 핫 함수는 함수 이용 임계값(UT) 이상의 연관된 함수 프로세서 이용 파라미터(PUP) 및 함수 명령 회수 임계값(IRT) 이상의 함수 명령 회수 파라미터(IRP)를 갖고, 상기 검출된 핫 루프는 루프 UT 이상의 연관된 루프 PUP 및 루프 IRT 이상의 루프 IRP를 갖고, 상기 검출된 핫 루프 내의 명령들의 수는 명령 임계값 이하인 장치.
- 제3항에 있어서, 상기 함수 UT, 상기 함수 IRT, 상기 루프 UT 및 상기 루프 IRT는 20% 내지 100%의 범위이고 상기 명령 임계값은 명령어들의 최대 수에 관련되고, 상기 명령어들의 최대 수는 100의 자릿수에 대응하는 장치.
- 제1항에 있어서, 상기 로직은 상기 검출된 핫 함수 및 상기 검출된 핫 루프 각각을 위해 하나 이상의 핫 명령들을 더 선택하고 상기 하나 이상의 선택된 핫 명령들 각각은 상기 검출된 핫 함수 또는 상기 검출된 핫 루프 내의 다른 명령들에 비해 높은 명령 프로세서 이용 파라미터(PUP) 및/또는 높은 명령의 명령 회수 파라미터(IRP) 중 적어도 하나를 갖는 장치.
- 제1항에 있어서, 상기 식별된 스핀 루프 중 적어도 하나는 중지 명령 이용 임계값(UT) 이상의 연관된 중지 명령 프로세서 이용 파라미터(PUP) 및 중지 명령의 명령 회수 임계값(IRT) 이상의 연관된 중지 명령의 명령 회수 파라미터(IRP)를 갖는 중지 명령을 포함하며 그리고/또는 상기 식별된 스핀 루프는 중지 명령 및 원자적 메모리 액세스 명령을 포함하는 장치.
- 제1항에 있어서, 상기 수정된 프로세스 부분은 일드(yield) 시스템 호출 또는 지수적 백오프 동작(exponentional back-off operation) 중 적어도 하나를 포함하는 장치.
- 하나 이상의 코어(들)를 포함하는 프로세서에 의해, 프로세스를 실행하는 단계;
검출 이용 임계값(UT)보다 더 큰 플랫폼 프로세서 이용 파라미터(PUP)에 응답하여 성능 감시 데이터를 모니터 스레드 로직에 의해 취득하는 단계 - 상기 성능 감시 데이터는 프로세서 이용 데이터 및 명령 회수 데이터 중 적어도 하나를 포함함 -;
검출된 핫 함수 및/또는 검출된 핫 루프 중 적어도 하나에 적어도 부분적으로 기초하여 스핀 루프를 커널 성능 모니터 드라이버 로직에 의해 식별하는 단계;
수정된 프로세스 부분을 생성하기 위해 이진 변환을 사용하여 상기 식별된 스핀 루프를 이진 변환기 로직에 의해 수정하는 단계; 및
상기 식별된 스핀 루프로부터 상기 수정된 프로세스 부분으로 재지향을 상기 이진 변환기 로직에 의해 구현하는 단계
를 포함하는 방법. - 제8항에 있어서, 상기 성능 감시 데이터와 관련되는 하나 이상의 성능 프로파일(들)에 적어도 부분적으로 기초하여 상기 검출된 핫 함수 및/또는 상기 검출된 핫 루프 중 적어도 하나를 상기 커널 성능 모니터 드라이버 로직에 의해 검출하는 단계를 더 포함하는 방법.
- 제8항에 있어서, 상기 검출된 핫 함수는 함수 이용 임계값(UT) 이상의 연관된 함수 프로세서 이용 파라미터(PUP) 및 함수 명령 회수 임계값(IRT) 이상의 함수 명령 회수 파라미터(IRP)를 갖고, 상기 검출된 핫 루프는 루프 UT 이상의 연관된 루프 PUP 및 루프 IRT 이상의 루프 IRP를 갖고 상기 검출된 핫 루프 내의 명령들의 수는 명령 임계값 이하인 방법.
- 제10항에 있어서, 상기 함수 UT, 상기 함수 IRT, 상기 루프 UT 및 상기 루프 IRT는 20% 내지 100%의 범위이고 상기 명령 임계값은 명령어들의 최대 수에 관련되고, 상기 명령어들의 최대 수는 100의 자릿수에 대응하는 방법.
- 제8항에 있어서, 상기 검출된 핫 함수 및 상기 검출된 핫 루프 각각을 위해 하나 이상의 핫 명령들을 커널 성능 모니터 드라이버 로직에 의해 선택하는 단계를 더 포함하며, 상기 하나 이상의 선택된 핫 명령들 각각은 상기 검출된 핫 함수 또는 상기 검출된 핫 루프 내의 다른 명령들에 비해 높은 명령 PUP 및/또는 높은 명령 IRP 중 적어도 하나를 갖는 방법.
- 제8항에 있어서, 상기 식별된 스핀 루프 중 적어도 하나는 중지 명령 이용 임계값(UT) 이상의 연관된 중지 명령 프로세서 이용 파라미터(PUP) 및 중지 명령의 명령 회수 임계값(IRT) 이상의 연관된 중지 명령의 명령 회수 파라미터(IRP)를 갖는 중지 명령을 포함하며 그리고/또는 상기 식별된 스핀 루프는 중지 명령 및 원자적 메모리 액세스 명령을 포함하는 방법.
- 제8항에 있어서, 상기 수정된 프로세스 부분은 일드 시스템 호출 또는 지수적 백오프 동작 중 적어도 하나를 포함하는 방법.
- 하나 이상의 프로세서들에 의해 실행될 때 하기의 동작들을 야기하는 명령들을 저장하는 컴퓨터 판독가능 저장 디바이스로서, 상기 동작들은,
프로세스를 실행하는 단계;
검출 이용 임계값(UT)보다 더 큰 플랫폼 프로세서 이용 파라미터(PUP)에 응답하여 성능 감시 데이터를 취득하는 단계 - 상기 성능 감시 데이터는 프로세서 이용 데이터 및 명령 회수 데이터 중 적어도 하나를 포함함 -;
적어도 부분적으로, 검출된 핫 함수 및/또는 검출된 핫 루프 중 적어도 하나를 상기 취득된 성능 감시 데이터를 사용하여 식별함으로써 상기 프로세스와 연관된 스핀 루프를 식별하는 단계;
수정된 프로세스 부분을 생성하기 위해 이진 변환을 사용하여 상기 식별된 스핀 루프를 수정하는 단계; 및
상기 식별된 스핀 루프로부터 상기 수정된 프로세스 부분으로 재지향을 구현하는 단계
를 포함하는 컴퓨터 판독가능 저장 디바이스. - 제15항에 있어서, 상기 프로세스와 연관된 스핀 루프를 식별하는 단계는,
상기 성능 감시 데이터와 관련되는 하나 이상의 성능 프로파일(들)에 적어도 부분적으로 기초하여 상기 검출된 핫 함수 및/또는 상기 검출된 핫 루프 중 적어도 하나를 검출하는 단계를 더 포함하는 컴퓨터 판독가능 저장 디바이스. - 제15항에 있어서, 상기 검출된 핫 함수는 함수 이용 임계값(UT) 이상의 연관된 함수 프로세서 이용 파라미터(PUP) 및 함수 명령 회수 임계값(IRT) 이상의 함수 명령 회수 파라미터(IRP)를 갖고, 상기 검출된 핫 루프는 루프 UT 이상의 연관된 루프 PUP 및 루프 IRT 이상의 루프 IRP를 갖고 상기 검출된 핫 루프 내의 명령들의 수는 명령 임계값 이하인 컴퓨터 판독가능 저장 디바이스.
- 제17항에 있어서, 상기 함수 UT, 상기 함수 IRT, 상기 루프 UT 및 상기 루프 IRT는 20% 내지 100%의 범위이고 상기 명령 임계값은 명령어들의 최대 수에 관련되고, 상기 명령어들의 최대 수는 100의 자릿수에 대응하는 컴퓨터 판독가능 저장 디바이스.
- 제15항에 있어서, 상기 명령들은 하나 이상의 프로세서들에 의해 실행될 때 하기의 부가 동작들을 야기하며, 이 부가 동작들은,
상기 검출된 핫 함수 및 상기 검출된 핫 루프 각각을 위해 하나 이상의 핫 명령들을 선택하는 단계를 포함하고, 상기 하나 이상의 선택된 핫 명령들 각각은 상기 검출된 핫 함수 또는 상기 검출된 핫 루프 내의 다른 명령들에 비해 높은 명령 PUP 및/또는 높은 명령 IRP 중 적어도 하나를 갖는 컴퓨터 판독가능 저장 디바이스. - 제15항에 있어서, 상기 식별된 스핀 루프 중 적어도 하나는 중지 명령 이용 임계값(UT) 이상의 연관된 중지 명령 프로세서 이용 파라미터(PUP) 및 중지 명령의 명령 회수 임계값(IRT) 이상의 연관된 중지 명령의 명령 회수 파라미터(IRP)를 갖는 중지 명령을 포함하며 그리고/또는 상기 식별된 스핀 루프는 중지 명령 및 원자적 메모리 액세스 명령을 포함하는 컴퓨터 판독가능 저장 디바이스.
- 제15항에 있어서, 상기 수정된 프로세스 부분은 일드 시스템 호출 또는 지수적 백오프 동작 중 적어도 하나를 포함하는 컴퓨터 판독가능 저장 디바이스.
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/565,512 US9411363B2 (en) | 2014-12-10 | 2014-12-10 | Synchronization in a computing device |
US14/565,512 | 2014-12-10 | ||
PCT/US2015/060610 WO2016094030A1 (en) | 2014-12-10 | 2015-11-13 | Synchronization in a computing device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170093121A KR20170093121A (ko) | 2017-08-14 |
KR102443089B1 true KR102443089B1 (ko) | 2022-09-14 |
Family
ID=56107930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177012734A Active KR102443089B1 (ko) | 2014-12-10 | 2015-11-13 | 컴퓨팅 디바이스에서의 동기화 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9411363B2 (ko) |
EP (1) | EP3230878A4 (ko) |
KR (1) | KR102443089B1 (ko) |
CN (1) | CN107003954B (ko) |
WO (1) | WO2016094030A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10642644B2 (en) | 2016-06-27 | 2020-05-05 | Intel Corporation | Memory management method and apparatus |
US10255717B2 (en) * | 2016-11-01 | 2019-04-09 | Nvidia Corporation | Geometry shadow maps with per-fragment atomics |
US10417057B2 (en) * | 2017-01-30 | 2019-09-17 | Oracle International Corporation | Mutex profiling based on waiting analytics |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080052498A1 (en) * | 2006-08-28 | 2008-02-28 | International Business Machines Corporation | Runtime code modification in a multi-threaded environment |
US20110320766A1 (en) | 2010-06-29 | 2011-12-29 | Youfeng Wu | Apparatus, method, and system for improving power, performance efficiency by coupling a first core type with a second core type |
US20140245306A1 (en) * | 2012-05-14 | 2014-08-28 | Qualcomm Incorporated | Adaptive Observation of Behavioral Features On A Heterogeneous Platform |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6115715A (en) * | 1998-06-29 | 2000-09-05 | Sun Microsystems, Inc. | Transaction management in a configuration database |
US6529921B1 (en) * | 1999-06-29 | 2003-03-04 | Microsoft Corporation | Dynamic synchronization of tables |
US6873995B2 (en) * | 2002-04-23 | 2005-03-29 | International Business Machines Corporation | Method, system, and program product for transaction management in a distributed content management application |
US7765543B1 (en) | 2003-12-17 | 2010-07-27 | Vmware, Inc. | Selective descheduling of idling guests running on a host computer system |
US20050240806A1 (en) * | 2004-03-30 | 2005-10-27 | Hewlett-Packard Development Company, L.P. | Diagnostic memory dump method in a redundant processor |
JP4287799B2 (ja) | 2004-07-29 | 2009-07-01 | 富士通株式会社 | プロセッサシステムおよびスレッド切り替え制御方法 |
US7895596B2 (en) | 2005-09-13 | 2011-02-22 | Hewlett-Packard Development Company, L.P. | Processor assignment in multi-processor systems |
CN101441510A (zh) * | 2008-11-27 | 2009-05-27 | 深圳华为通信技术有限公司 | 一种实现多处理器处理信息的方法和终端 |
US20110292834A1 (en) * | 2010-05-27 | 2011-12-01 | International Business Machines Corporation | Maintaining Time Series Models for Information Technology System Parameters |
-
2014
- 2014-12-10 US US14/565,512 patent/US9411363B2/en not_active Expired - Fee Related
-
2015
- 2015-11-13 KR KR1020177012734A patent/KR102443089B1/ko active Active
- 2015-11-13 EP EP15867831.8A patent/EP3230878A4/en not_active Withdrawn
- 2015-11-13 CN CN201580061444.9A patent/CN107003954B/zh active Active
- 2015-11-13 WO PCT/US2015/060610 patent/WO2016094030A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080052498A1 (en) * | 2006-08-28 | 2008-02-28 | International Business Machines Corporation | Runtime code modification in a multi-threaded environment |
US20110320766A1 (en) | 2010-06-29 | 2011-12-29 | Youfeng Wu | Apparatus, method, and system for improving power, performance efficiency by coupling a first core type with a second core type |
US20140245306A1 (en) * | 2012-05-14 | 2014-08-28 | Qualcomm Incorporated | Adaptive Observation of Behavioral Features On A Heterogeneous Platform |
Non-Patent Citations (1)
Title |
---|
Wikipedia: Spinlock. 2014.11.12. |
Also Published As
Publication number | Publication date |
---|---|
KR20170093121A (ko) | 2017-08-14 |
US20160170438A1 (en) | 2016-06-16 |
WO2016094030A1 (en) | 2016-06-16 |
CN107003954A (zh) | 2017-08-01 |
EP3230878A1 (en) | 2017-10-18 |
EP3230878A4 (en) | 2018-07-25 |
CN107003954B (zh) | 2020-09-08 |
US9411363B2 (en) | 2016-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9465734B1 (en) | Coalition based memory management | |
US8904240B2 (en) | Monitoring and resolving deadlocks, contention, runaway CPU and other virtual machine production issues | |
US9135079B2 (en) | Dynamically assigning a portion of physical computing resource to logical partitions based on characteristics of executing logical partitions | |
US10977092B2 (en) | Method for efficient task scheduling in the presence of conflicts | |
JP2016507849A5 (ko) | ||
JP6367490B2 (ja) | プロセッサトランザクショナルメモリサポートを用いるメモリアクセス保護 | |
US9760411B2 (en) | Switching a locking mode of an object in a multi-thread program | |
TW201342218A (zh) | 通透地提供給作業系統之非對稱多核心處理器系統 | |
US10095305B2 (en) | Wake lock aware system wide job scheduling for energy efficiency on mobile devices | |
US10452443B2 (en) | Dynamic tuning of multiprocessor/multicore computing systems | |
US20160283272A1 (en) | Shared resource access control method and apparatus | |
EP2972826B1 (en) | Multi-core binary translation task processing | |
CN109840151B (zh) | 一种用于多核处理器的负载均衡方法和装置 | |
KR102443089B1 (ko) | 컴퓨팅 디바이스에서의 동기화 | |
CN104205043B (zh) | 对计算机上的操作系统隐藏逻辑处理器 | |
US20180285559A1 (en) | Stack pivot detection systems and methods | |
JP2017117451A (ja) | バイナリ分析を用いたネイティブコード起動技術 | |
US20170038824A1 (en) | Method and apparatus for reducing consumption of standby power through detection of idle state of system | |
CN110795231B (zh) | 一种虚拟cpu的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0105 | International application |
Patent event date: 20170511 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PG1501 | Laying open of application | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20201113 Comment text: Request for Examination of Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20211130 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20220603 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20220907 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20220908 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |