JP6464982B2 - 並列化方法、並列化ツール、車載装置 - Google Patents
並列化方法、並列化ツール、車載装置 Download PDFInfo
- Publication number
- JP6464982B2 JP6464982B2 JP2015199703A JP2015199703A JP6464982B2 JP 6464982 B2 JP6464982 B2 JP 6464982B2 JP 2015199703 A JP2015199703 A JP 2015199703A JP 2015199703 A JP2015199703 A JP 2015199703A JP 6464982 B2 JP6464982 B2 JP 6464982B2
- Authority
- JP
- Japan
- Prior art keywords
- core
- task
- dependent task
- dependent
- allocated
- 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
- 238000000034 method Methods 0.000 title claims description 295
- 230000008569 process Effects 0.000 claims description 253
- 230000001419 dependent effect Effects 0.000 claims description 100
- 238000012545 processing Methods 0.000 claims description 82
- 230000006870 function Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000020169 heat generation Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002618 waking effect Effects 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
- 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 OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation 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 OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
Description
コアが一つであるシングルコアマイコン用のシングルプログラムにおける複数の処理(A11〜A14、A21、A22、B11〜B14、B21、B22)から複数のコアを有するマルチコアマイコン用に並列化した並列プログラムを生成するコンピュータが実行する方法であり、シングルプログラムにおける複数の処理の依存関係を解析して、複数の処理をマルチコアマイコンの異なるコア用に割り振る並列化方法であって、
各コアに割り振られる複数の処理毎に、依存関係がある処理を依存タスクに割り振り、依存関係がない処理を非依存タスクに割り振る分割処理手順(S10〜S12)と、
他コアの依存タスクに割り振られた処理の実行が完了したことを条件に、自コアの依存タスクに割り振られた処理の実行を開始するため自コアの依存タスクを待ち状態としている場合に、自コアの非依存タスクに割り振られた処理が実行される機能を並列プログラムに付与する付与処理手順(S15)と、を備えている。
コアが一つであるシングルコアマイコン用のシングルプログラムにおける複数の処理(A11〜A14、A21、A22、B11〜B14、B21、B22)から複数のコアを有するマルチコアマイコン用に並列化した並列プログラムを生成するツールであり、シングルプログラムにおける複数の処理の依存関係を解析して、複数の処理をマルチコアマイコンの異なるコア用に割り振るコンピュータを含む並列化ツールであって、
コンピュータは、
各コアに割り振られる複数の処理毎に、依存関係がある処理を依存タスクに割り振り、依存関係がない処理を非依存タスクに割り振る分割処理手順(S10〜S12)と、
他コアの依存タスクに割り振られた処理の実行が完了したことを条件に、自コアの依存タスクに割り振られた処理の実行を開始するため自コアの依存タスクを待ち状態としている場合に、自コアの非依存タスクに割り振られた処理が実行される機能を並列プログラムに付与する付与処理手順(S15)と、を実行する点にある。
複数のコアを有するマルチコアマイコンを備え、コアが一つであるシングルコアマイコン用のシングルプログラムにおける複数の処理(A11〜A14、A21、A22、B11〜B14、B21、B22)からマルチコアマイコン用に並列化されたものであり、複数の処理の依存関係を解析して、複数の処理がマルチコアマイコンの異なるコア用に割り振られた並列プログラムを記憶する車載装置であって、
並列プログラムは、
各コアの夫々に対して、依存関係がある処理が割り振られた依存タスクと、依存関係がない処理が割り振られた非依存タスクと、を含み、
マルチコアマイコンは、
他コアの依存タスクに割り振られた処理の実行が完了したことを条件に、自コアの依存タスクに割り振られた処理の実行を開始するため自コアの依存タスクを待ち状態としている場合に、自コアの非依存タスクに割り振られた処理を実行させる非依存タスク実行部(S55)と、を備えている点にある。
Claims (9)
- コアが一つであるシングルコアマイコン用のシングルプログラムにおける複数の処理(A11〜A14、A21、A22、B11〜B14、B21、B22)から複数の前記コアを有するマルチコアマイコン用に並列化した並列プログラムを生成するコンピュータが実行する方法であり、前記シングルプログラムにおける複数の前記処理の依存関係を解析して、複数の前記処理を前記マルチコアマイコンの異なる前記コア用に割り振る並列化方法であって、
各コアに割り振られる複数の前記処理毎に、依存関係がある前記処理を依存タスクに割り振り、依存関係がない前記処理を非依存タスクに割り振る分割処理手順(S10〜S12)と、
他コアの前記依存タスクに割り振られた前記処理の実行が完了したことを条件に、自コアの前記依存タスクに割り振られた前記処理の実行を開始するため前記自コアの前記依存タスクを待ち状態とする場合に、前記自コアの前記非依存タスクに割り振られた前記処理が実行される機能を前記並列プログラムに付与する付与処理手順(S15)と、を備えている並列化方法。 - 前記依存タスクと前記非依存タスクの起床時に、前記コア毎に、前記依存タスクと前記非依存タスクを一旦起床させ、前記非依存タスクを待ち状態にする機能を前記並列プログラムに付与する起床処理手順(S14)を備えている請求項1に記載の並列化方法。
- 前記自コアの前記依存タスクに割り振られた前記処理の実行が完了し、前記他コアの前記依存タスクが待ち状態であった場合、前記他コアの前記非依存タスクを待ち状態とし、且つ、前記他コアの前記依存タスクの待ち状態を解除する機能を前記並列プログラムに付与する切替処理手順(S16)を備えている請求項1又は2に記載の並列化方法。
- コアが一つであるシングルコアマイコン用のシングルプログラムにおける複数の処理(A11〜A14、A21、A22、B11〜B14、B21、B22)から複数の前記コアを有するマルチコアマイコン用に並列化した並列プログラムを生成するツールであり、前記シングルプログラムにおける複数の前記処理の依存関係を解析して、複数の前記処理を前記マルチコアマイコンの異なる前記コア用に割り振るコンピュータを含む並列化ツールであって、
前記コンピュータは、
各コアに割り振られる複数の前記処理毎に、依存関係がある前記処理を依存タスクに割り振り、依存関係がない前記処理を非依存タスクに割り振る分割処理手順(S10〜S12)と、
他コアの前記依存タスクに割り振られた前記処理の実行が完了したことを条件に、自コアの前記依存タスクに割り振られた前記処理の実行を開始するため前記自コアの前記依存タスクを待ち状態とする場合に、前記自コアの前記非依存タスクに割り振られた前記処理が実行される機能を前記並列プログラムに付与する付与処理手順(S15)と、を実行する並列化ツール。 - 前記依存タスクと前記非依存タスクの起床時に、前記コア毎に、前記依存タスクと前記非依存タスクを一旦起床させ、前記非依存タスクを待ち状態にする機能を前記並列プログラムに付与する起床処理手順(S14)を更に実行する請求項4に記載の並列化ツール。
- 前記自コアの前記依存タスクに割り振られた前記処理の実行が完了し、前記他コアの前記依存タスクが待ち状態であった場合、前記他コアの前記非依存タスクを待ち状態とし、且つ、前記他コアの前記依存タスクの待ち状態を解除する機能を前記並列プログラムに付与する切替処理手順(S16)を更に実行する請求項4又は5に記載の並列化ツール。
- 複数のコアを有するマルチコアマイコンを備え、前記コアが一つであるシングルコアマイコン用のシングルプログラムにおける複数の処理(A11〜A14、A21、A22、B11〜B14、B21、B22)から前記マルチコアマイコン用に並列化されたものであり、複数の前記処理の依存関係を解析して、複数の前記処理が前記マルチコアマイコンの異なる前記コア用に割り振られた並列プログラムを記憶する車載装置であって、
前記並列プログラムは、
各コアの夫々に対して、依存関係がある前記処理が割り振られた依存タスクと、依存関係がない前記処理が割り振られた非依存タスクと、を含み、
前記マルチコアマイコンは、
他コアの前記依存タスクに割り振られた前記処理の実行が完了したことを条件に、自コアの前記依存タスクに割り振られた前記処理の実行を開始するため前記自コアの前記依存タスクを待ち状態とする場合に、前記自コアの前記非依存タスクに割り振られた前記処理を実行させる非依存タスク実行部(S55、S56)と、を備えている車載装置。 - 前記マルチコアマイコンは、前記依存タスクと前記非依存タスクの起床時に、前記コア毎に、前記依存タスクと前記非依存タスクを一旦起床させ、前記非依存タスクを待ち状態にする起床処理部(S21〜S26)を備えている請求項7に記載の車載装置。
- 前記マルチコアマイコンは、前記自コアの前記依存タスクに割り振られた前記処理の実行が完了し、前記他コアの前記依存タスクが待ち状態であった場合、前記他コアの前記非依存タスクを待ち状態とし、且つ、前記他コアの前記依存タスクの待ち状態を解除する切替処理部(S53、S54)を備えている請求項7又は8に記載の車載装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015199703A JP6464982B2 (ja) | 2015-10-07 | 2015-10-07 | 並列化方法、並列化ツール、車載装置 |
DE102016219403.8A DE102016219403A1 (de) | 2015-10-07 | 2016-10-06 | Parallelisierungsverarbeitung, parallelisierungswerkzeug und fahrzeuggebundene vorrichtung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015199703A JP6464982B2 (ja) | 2015-10-07 | 2015-10-07 | 並列化方法、並列化ツール、車載装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017073000A JP2017073000A (ja) | 2017-04-13 |
JP6464982B2 true JP6464982B2 (ja) | 2019-02-06 |
Family
ID=58405641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015199703A Active JP6464982B2 (ja) | 2015-10-07 | 2015-10-07 | 並列化方法、並列化ツール、車載装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6464982B2 (ja) |
DE (1) | DE102016219403A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109697122B (zh) * | 2017-10-20 | 2024-03-15 | 华为技术有限公司 | 任务处理方法、设备及计算机存储介质 |
JP7042105B2 (ja) | 2018-02-16 | 2022-03-25 | 日立Astemo株式会社 | プログラム実行制御方法および車両制御装置 |
WO2020026315A1 (ja) | 2018-07-30 | 2020-02-06 | 三菱電機株式会社 | 割り込み制御装置、割り込み制御方法および割り込み制御プログラム |
JP7095620B2 (ja) * | 2019-02-21 | 2022-07-05 | 株式会社デンソー | 演算装置 |
CN110365768B (zh) * | 2019-07-15 | 2021-07-06 | 腾讯科技(深圳)有限公司 | 分布式系统的数据同步方法、装置、介质、电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3039953B2 (ja) * | 1989-04-28 | 2000-05-08 | 株式会社日立製作所 | 並列化装置 |
WO2011104812A1 (ja) * | 2010-02-23 | 2011-09-01 | 富士通株式会社 | マルチコアプロセッサシステム、割込プログラム、および割込方法 |
JP2012108576A (ja) * | 2010-11-15 | 2012-06-07 | Toyota Motor Corp | マルチコアプロセッサ、処理実行方法、プログラム |
KR101901587B1 (ko) * | 2011-12-13 | 2018-10-01 | 삼성전자주식회사 | 연성 실시간 운영체제의 실시간성을 확보하는 방법 및 장치 |
JP6018022B2 (ja) | 2013-06-14 | 2016-11-02 | 株式会社デンソー | 並列化コンパイル方法、並列化コンパイラ、並列化コンパイル装置、及び、車載装置 |
-
2015
- 2015-10-07 JP JP2015199703A patent/JP6464982B2/ja active Active
-
2016
- 2016-10-06 DE DE102016219403.8A patent/DE102016219403A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102016219403A1 (de) | 2017-04-13 |
JP2017073000A (ja) | 2017-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6464982B2 (ja) | 並列化方法、並列化ツール、車載装置 | |
KR101738641B1 (ko) | 멀티 코어 시스템의 프로그램 컴파일 장치 및 방법 | |
US11449364B2 (en) | Processing in a multicore processor with different cores having different architectures | |
US9619282B2 (en) | Task scheduling in big and little cores | |
JP4936517B2 (ja) | ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ | |
Xu et al. | Cache-aware compositional analysis of real-time multicore virtualization platforms | |
Axer et al. | Response-time analysis of parallel fork-join workloads with real-time constraints | |
US8984200B2 (en) | Task scheduling in big and little cores | |
Bailey et al. | Finding the limits of power-constrained application performance | |
KR101626378B1 (ko) | 병렬도를 고려한 병렬 처리 장치 및 방법 | |
JP6427054B2 (ja) | 並列化コンパイル方法、及び並列化コンパイラ | |
WO2020121840A1 (ja) | 演算制御装置 | |
US9910717B2 (en) | Synchronization method | |
JP2016218503A (ja) | 並列化コンパイル方法、並列化コンパイラ、及び車載装置 | |
Forsberg et al. | HePREM: A predictable execution model for GPU-based heterogeneous SoCs | |
JP2017228029A (ja) | 並列化方法、並列化ツール、車載装置 | |
CN108139929B (zh) | 用于调度多个任务的任务调度装置和方法 | |
US10162679B2 (en) | Method and system for assigning a computational block of a software program to cores of a multi-processor system | |
JP6477260B2 (ja) | アプリケーションを実行する方法及びリソースマネジャ | |
US10255119B2 (en) | Parallelization method, parallelization tool and vehicle-mounted device | |
KR101658792B1 (ko) | 컴퓨팅 시스템 및 방법 | |
Moore et al. | Inflation and deflation of self-adaptive applications | |
US20200065147A1 (en) | Electronic devices and methods for 5g and b5g multi-core load balancing | |
KR102022972B1 (ko) | 이종 멀티 프로세싱 시스템 환경 기반 런타임 관리장치 및 방법 | |
JP6933001B2 (ja) | 並列化方法、並列化ツール |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171128 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180620 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180808 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181002 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181127 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181224 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6464982 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |