DE102019117800A1 - Rechensystem und Verfahren zum Betreiben eines Rechensystems - Google Patents

Rechensystem und Verfahren zum Betreiben eines Rechensystems Download PDF

Info

Publication number
DE102019117800A1
DE102019117800A1 DE102019117800.2A DE102019117800A DE102019117800A1 DE 102019117800 A1 DE102019117800 A1 DE 102019117800A1 DE 102019117800 A DE102019117800 A DE 102019117800A DE 102019117800 A1 DE102019117800 A1 DE 102019117800A1
Authority
DE
Germany
Prior art keywords
core
performance
type
cores
task
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.)
Pending
Application number
DE102019117800.2A
Other languages
English (en)
Inventor
Jun Mo Park
Bum Gyu Park
Dae Yeong Lee
Lak-Kyung JUNG
Dae Hyun Cho
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102019117800A1 publication Critical patent/DE102019117800A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5012Processor sets
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Power Sources (AREA)

Abstract

Ein Rechensystem (1) umfasst einen ISA-Identifizierer (100), um eine ISA (Befehlssatzarchitektur) einer Aufgabe zu identifizieren; eine Kernauswahlvorrichtung (110), um einen Kern mit einer höchsten Leistungs-Performance-Effizienz aus einer Mehrzahl von Kernen (B1, B2, L1-L4, M1-M4) basierend auf der identifizierten ISA auszuwählen; und einen Aufgabenzuordner (120), um die Aufgabe an den ausgewählten Kern zu vergeben.

Description

  • Querverweis auf verwandte Anmeldung
  • Die koreanischen Patentanmeldung Nr. 10-2018-0135615 , eingereicht am 7. November 2018 beim koreanischen Patentamt, mit dem Titel „Rechensystem und Verfahren zum Betreiben eines Rechensystems“, wird durch Verweis vollinhaltlich mitaufgenommen.
  • Hintergrund
  • Gebiet
  • Beispielhafte Ausführungsformen betreffen ein Rechensystem mit einem Mehrkernprozessor und ein Verfahren zum Betreiben des Rechensystems. Insbesondere betreffen die beispielhaften Ausführungsformen ein Aufgabenvergabeverfahren zum Betreiben des Rechensystems.
  • Beschreibung des Stands der Technik
  • Ein Rechensystem kann einen Mehrkernprozessor umfassen, der heterogene Kerne umfasst. Zum Beispiel können die heterogenen Kerne jeweils Aufgaben mit unterschiedlichen ISA-Typen (Befehlssatzarchitektur) verarbeiten. Ferner können die heterogenen Kerne Aufgaben mit der gleichen ISA verarbeiten. Die heterogenen Kerne zum Verarbeiten der gleichen ISA können einen Kern mit einer hohen Performance und einem hohen Leistungsverbrauch umfassen und einen anderen Kern mit einer niedrigen Performance und einem niedrigen Leistungsverbrauch.
  • Ferner können die heterogenen Kerne des Mehrkernprozessors unterschiedliche Leistungseffizienzen entsprechend ihren Betriebsbedingungen aufweisen. Zum Beispiel können die heterogenen Kerne Leistungs-Performance-Effizienzen aufweisen, die sich voneinander entsprechend einer Bit-Breite einer ISA einer Aufgabe unterscheiden. Mit anderen Worten, bei den heterogenen Kernen unterscheiden sich die Leistungs-Performance-Effizienzen der heterogenen Kerne, wenn die heterogenen Kerne eine Aufgabe mit einer 32-Bit-ISA durchführen, von jenen der heterogenen Kerne, wenn die heterogenen Kerne eine Aufgabe mit einer 64-Bit-ISA durchführen. Ferner können die Leistungs-Performance-Effizienzen der heterogenen Kerne entsprechend einer Betriebsfrequenzvariation verändert werden. Da ein Aufgabenplaner in einem Betriebssystem im Allgemeinen Aufgaben plant, ohne eine Leistungs-Performance-Effizienz entsprechend einer Betriebsfrequenz und einer Bit-Breite einer ISA einer Aufgabe zu berücksichtigen, ist es möglich, dass Performance-Variationen zwischen den heterogenen Kernen nicht vollständig in dem Rechensystem mit dem Mehrkernprozessor widergespiegelt werden.
  • Kurzfassung
  • Ausführungsformen betreffen ein Rechensystem, das Folgendes aufweist: einen ISA-Identifizierer, um eine ISA (Befehlssatzarchitektur) einer Aufgabe zu identifizieren; eine Kernauswahlvorrichtung, um einen Kern mit einer höchsten Leistungs-Performance-Effizienz aus einer Mehrzahl von Kernen basierend auf der identifizierten ISA auszuwählen; und einen Aufgabenzuordner, um die Aufgabe an den ausgewählten Kern zu vergeben.
  • Ausführungsformen betreffen ein Rechensystem, das Folgendes aufweist: einen Kern von einem ersten Typ, der eine erste maximale Betriebsfrequenz hat; einen Kern von einem zweiten Typ, der eine zweite maximale Betriebsfrequenz hat, die niedriger ist als die erste maximale Betriebsfrequenz; einen ISA-Identifizierer, um eine ISA (Befehlssatzarchitektur) einer Aufgabe zu identifizieren; eine Kernauswahlvorrichtung, um bei einer niedrigeren Betriebsfrequenz als der zweiten maximalen Betriebsfrequenz, basierend auf der identifizierten ISA den Kern vom zweiten Typ auszuwählen, wenn eine Leistungs-Performance-Effizienz des Kerns vom zweiten Typ höher ist als die Leistungs-Performance-Effizienz des Kerns vom ersten Typ, und um den Kern vom ersten Typ auszuwählen, wenn die Leistungs-Performance-Effizienz des Kerns vom ersten Typ höher ist als die Leistungs-Performance-Effizienz des Kerns vom zweiten Typ; und einen Aufgabenzuordner, um die Aufgabe an den ausgewählten Kern zu vergeben.
  • Ausführungsformen betreffen ein Verfahren zum Betreiben eines Rechensystems, wobei das Verfahren Folgendes aufweist: Identifizieren einer ISA (Befehlssatzarchitektur) einer Aufgabe; Auswählen eines Kerns mit einer höchsten Leistungs-Performance-Effizienz aus einer Mehrzahl von Kernen basierend auf der identifizierten ISA; und Vergabe der Aufgabe an den ausgewählten Kern.
  • Figurenliste
  • Merkmale sind für den Fachmann durch eine detaillierte Beschreibung von beispielhaften Ausführungsformen unter Bezugnahme auf die beigefügten Zeichnungen ersichtlich, in denen:
    • 1 ein Rechensystem gemäß einer beispielhaften Ausführungsform darstellt;
    • 2 ein Rechensystem gemäß einer beispielhaften Ausführungsform darstellt;
    • 3 ein Rechensystem gemäß einer beispielhaften Ausführungsform darstellt;
    • 4 ein Diagramm zur Erläuterung einer Leistungs-Performance-Tabelle gemäß einer beispielhaften Ausführungsform darstellt;
    • 5 einen Betrieb eines Rechensystems gemäß einer beispielhaften Ausführungsform in Verbindung mit 4 darstellt;
    • 6 ein Diagramm zur Erläuterung einer Leistungs-Performance-Tabelle gemäß einer beispielhaften Ausführungsform darstellt;
    • 7 einen Betrieb eines Rechensystems gemäß einer beispielhaften Ausführungsform in Verbindung mit 6 darstellt;
    • 8 ein Verfahren zum Betreiben eines Rechensystems gemäß einer beispielhaften Ausführungsform darstellt; und
    • 9 ein Verfahren zum Betreiben eines Rechensystems gemäß einer beispielhaften Ausführungsform darstellt.
  • Detaillierte Beschreibung
  • 1 stellt ein Rechensystem gemäß einer beispielhaften Ausführungsform dar. In 1 kann ein Rechensystem 1 einen Scheduler 10 und einen Mehrkernprozessor 20 umfassen. Zum Beispiel kann das Rechensystem 1 als Ein-Chip-System (SoC) implementiert sein.
  • Der Mehrkernprozessor 20 kann eine Mehrzahl von Kernen umfassen. Die Mehrzahl von Kernen kann heterogene Kerne umfassen. Zum Beispiel kann jeder der Mehrzahl von Kernen eine einzelne Prozessoreinheit sein. In 1 kann der Mehrkernprozessor 20 Kerne vom ersten Typ B1 und B2 umfassen, die als Kerngruppe 200 des ersten Typs klassifiziert sind, und Kerne vom zweiten Typ L1, L2, L3 und L4, die als Kerngruppe 210 des zweiten Typs klassifiziert sind. In einer anderen beispielhaften Ausführungsform kann der Mehrkernprozessor 20 ferner Kerngruppen eines anderen Typs umfassen, und die Anzahl der Kerngruppen kann veränderbar sein. Ferner kann die Anzahl an Kernen jeder Kern-Gruppe auch veränderbar sein.
  • In einigen Ausführungsformen kann der Mehrkernprozessor 20 eine big.LITTLE-Architektur umfassen (z. B. ARM big.LITTLE). Die big.LITTLE-Architektur kann einen big-Kern und einen LITTLE-Kern umfassen. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 dem big-Kern der big.LITTLE-Architektur entsprechen. Die Kerne vom zweiten Typ L1, L2, L3 und L4 können dem LITTLE-Kern der big.LITTLE-Architektur entsprechen. Der big-Kern kann eine hohe Performance und einen hohen Leistungsverbrauch aufweisen und der LITTLE-Kern kann eine niedrige Performance und einen niedrigen Leistungsverbrauch aufweisen. Mit anderen Worten, der big-Kern kann sich auf einen Kern mit hoher Performance und einem hohen Leistungsverbrauch beziehen und der LITTLE-Kern kann sich auf einen Kern mit niedriger Performance und niedrigem Leistungsverbrauch beziehen. Der Big-Kern und der LITTLE-Kern können Aufgaben erhalten, die dynamisch entsprechend Betriebsbedingungen vergeben werden, wenn der big-Kern und der LITTLE-Kern die gleiche Speicherregion verwenden. Zum Beispiel können Aufgaben an den heterogenen Kernen (z. B. dem big-Kern und dem LITTLE-Kern) unter Verwendung von Verfahren zur Aufgabenvergabe angelegt werden, z. B. einer Cluster-Migration, eines In-Kernel-Switcher, eines heterogenen Multiprocessing.
  • Die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 können elektrisch über einen Bus 290 miteinander verbunden sein. In einigen Ausführungsformen kann der Bus 290 zum Beispiel als AXI (Advanced Extensible Interface) implementiert sein, die auf einer AMBA (Advanced Microcontroller Bus Architecture) basiert.
  • Die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 des Mehrkernprozessors 20 weisen unterschiedliche Leistungs-Performance-Effizienzen auf. Ein Leistungsverbrauch der Kerne vom ersten Typ B1 und B2 und der Kerne vom zweiten Typ L1, L2, L3 und L4 können entsprechend einer Bit-Breite einer ISA einer Aufgabe und einer Betriebsfrequenz des Rechensystems 1 verändert werden. Zum Beispiel während die Kerne vom ersten Typ B1 und B2 Kerne mit hoher Performance und hohem Leistungsverbrauch sind, und die Kerne vom zweiten Typ L1, L2, L3 und L4 Kerne mit niedriger Performance und niedrigem Leistungsverbrauch sind, können die Kerne vom zweiten Typ L1, L2, L3 und L4 manchmal mehr Leistung verbrauchen als die Kerne vom ersten Typ B1 und B2, um die gleiche Performance entsprechend der Bit-Breite der ISA der Aufgabe und der Betriebsfrequenz des Rechensystems 1 aufrechtzuerhalten. Wenn die Aufgabe an den Mehrkernprozessor 20 vergeben wird (der die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 umfasst), kann daher eine Änderung des Leistungsverbrauchs der Kerne vom ersten Typ B1 und B2 und der Kerne vom zweiten Typ L1, L2, L3 und L4 entsprechend der Bit-Breite der Aufgabe und der Betriebsfrequenz des Rechensystems 1 berücksichtigt werden, um einen Gesamtleistungsverbrauch des Mehrkernprozessors 20 zu reduzieren und eine Betriebs-Performance des Mehrkernprozessors 20 aufrechtzuerhalten. Ferner werden die Leistungs-Performance-Effizienzen der Kerne vom ersten Typ B1 und B2 und der Kerne vom zweiten Typ L1, L2, L3 und L4 später unter Bezugnahme auf 4 näher beschrieben, die eine Leistungs-Performance-Tabelle einer Aufgabe mit einer 32-Bit-ISA darstellt, und 6, die eine Leistungs-Performance-Tabelle einer Aufgabe mit einer 64-Bit-ISA darstellt.
  • Der Scheduler 10 kann ein ISA-Identifizierungsmodul 100 umfassen, ein Kernauswahlmodul 110 und ein Aufgabenvergabemodul 120, die Elemente zur Vergabe der Aufgabe an den Mehrkernprozessor 20 unter Berücksichtigung einer Veränderung des Leistungsverbrauchs entsprechend der Betriebsfrequenz des Rechensystems 1 sind.
  • Das ISA-Identifizierungsmodul 100 kann eine ISA (Befehlssatzarchitektur) der Aufgabe identifizieren. Zum Beispiel kann das ISA-Identifizierungsmodul 100 identifizieren, ob die ISA der Aufgabe eine 32-Bit-ISA oder eine 64-Bit-ISA ist und kann bestimmen, ob die Aufgabe eine 32-Bit-Aufgabe oder eine 64-Bit-Aufgabe ist. Die 32-Bit-ISA kann eine AArch32 umfassen. Die 64-Bit-ISA kann eine AArch64 umfassen. In einer anderen beispielhaften Ausführungsform kann das ISA-Identifizierungsmodul 100 identifizieren, ob die ISA der Aufgabe eine N-Bit-ISA oder eine 2N-Bit-ISA ist, wobei N eine natürliche Zahl ist.
  • Das Kernauswahlmodul 110 kann einen Kern mit der höchsten Leistungs-Performance-Effizienz von einer Mehrzahl von Kernen des Mehrkernprozessors 20 basierend auf der ISA der Aufgabe auswählen, die von dem ISA-Identifizierungsmodul 100 identifiziert wurde, z. B. der Bit-Anzahl der ISA der Aufgabe. Zum Beispiel kann das Kernauswahlmodul 110 einen Kern zur Verarbeitung der Aufgabe unter Berücksichtigung einer Variation des Leistungsverbrauchs der Mehrzahl von Kernen entsprechend einer Betriebsfrequenz des Mehrkernprozessors 20 auswählen.
  • Zum Beispiel wenn die ISA die 2-Bit-ISA ist, können die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 voneinander unterschiedliche Leistungs-Performance-Effizienzen aufweisen. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 unterschiedliche Leistungs-Performance-Effizienzen entsprechend der Betriebsfrequenz des Mehrkernprozessors 20 aufweisen. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 unterschiedliche Leistungs-Performance-Effizienzen entsprechend höherer und niedrigerer Betriebsfrequenzen aufweisen. Ferner können die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 unterschiedliche Leistungs-Performance-Effizienzen entsprechend der Bit-Anzahl der ISA der Aufgabe aufweisen. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 unterschiedliche Leistungs-Performance-Effizienzen entsprechend einer 32-Bit-ISA und einer 64-Bit-ISA aufweisen.
  • Zum Beispiel wenn die ISA die 64-Bit-ISA ist, können die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 voneinander unterschiedliche Leistungs-Performance-Effizienzen aufweisen. Wenn die ISA dagegen eine 64-Bit-ISA ist, können die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4 unterschiedliche Leistungs-Performance-Effizienzen mit einer anderen Tendenz als in dem Fall der 32-Bit-ISA aufweisen. Zum Beispiel können sich die Leistungs-Performance-Effizienzen der Kerne vom ersten Typ B1 und B2 und der Kerne vom zweiten Typ L1, L2, L3 und L4, wenn Aufgaben mit der 64-Bit-ISA darin ausgeführt werden, von jenen der Kerne vom ersten Typ B1 und B2 und der Kerne vom zweiten Typ L1, L2, L3 und L4, wenn Aufgaben mit der 32-Bit-ISA darin ausgeführt werden, unterscheiden. Das Kernauswahlmodul 110 kann unter Berücksichtigung von Betriebsbedingungen (z. B. der Bit-Anzahl der ISA und der Betriebsfrequenz) den Kern auswählen, der die höchste Leistungs-Performance-Effizienz aufweist.
  • Das Aufgabenvergabemodul 120 kann die Aufgabe an den Kern vergeben, der von dem Kernauswahlmodul 110 ausgewählt wird. Zum Beispiel kann der ausgewählte Kern die Aufgabe mit einer ausreichenden Performance und einer relativ niedrigen Leistung verarbeiten. Zum Beispiel kann der ausgewählte Kern die Aufgabe mit der höchsten Leistungs-Performance-Effizienz verarbeiten. Zum Beispiel kann eine Leistungs-Performance-Effizienz einem Verhältnis einer Betriebs-Performance zu einem Leistungsverbrauch entsprechen. Zum Beispiel ist, wenn jeder der Mehrzahl von Kernen die Aufgabe verarbeitet, ein Verhältnis einer Betriebs-Performance zu einem Leistungsverbrauch des ausgewählten Kerns größer als Verhältnisse von Betriebs-Performance zu Leistungsverbrauch von anderen der Mehrzahl von Kernen.
  • Wenn eine Aufgabenplanung (bzw. ein Aufgaben-Scheduling) durchgeführt wird, indem die Aufgabe an den Mehrkernprozessor 20 unter Berücksichtigung einer Veränderung eines Leistungsverbrauchs gemäß einer Betriebsfrequenz des Mehrkernprozessors 20 basierend auf der ISA der Aufgabe vergeben wird, kann der Leistungsverbrauch des Mehrkernprozessors 20 reduziert werden, während die Performance des Mehrkernprozessors 20 aufrechterhalten wird.
  • 2 stellt ein Rechensystem gemäß einer anderen beispielhaften Ausführungsform dar. Gemäß 2 kann sich ein Rechensystem 2 von dem Rechensystem 1 aus 1 unterscheiden. Zum Beispiel kann ein Mehrkernprozessor 20 des Rechensystems 2 als Tri-Cluster-Architektur implementiert sein, welche die Kerne vom ersten Typ B1, B2 umfasst, die als Kerngruppe 200 vom ersten Typ klassifiziert sind, die Kerne vom zweiten Typ L1, L2, L3 und L4 umfasst, die als Kerngruppe 210 vom zweiten Typ klassifiziert sind, und Kerne vom dritten Typ M1, M2, M3 und M4 umfasst, die als Kerngruppe 220 vom dritten Typ klassifiziert sind. Zum Beispiel kann die Anzahl an Kerngruppen und die Anzahl an Kernen, die zu jeder Kerngruppe gehört, veränderbar sein.
  • In einigen Ausführungsformen kann die Tri-Cluster-Architektur eine big.MIDdle.LITTLE-Architektur umfassen, die einen big-Kern, einen MIDdle-Kern und einen LITTLE-Kern umfasst. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 dem big-Kern der big.MIDdle.LITTLE-Architektur entsprechen. Die Kerne vom zweiten Typ L1, L2, L3 und L4 können dem LITTLE-Kern der big.MIDdle.LITTLE-Architektur entsprechen. Die Kerne vom dritten Typ M1, M2, M3 und M4 können dem MIDdle-Kern der big.MIDdle.LITTLE-Architektur entsprechen. Mit big-Kern kann ein Kern mit hoher Performance und hohem Leistungsverbrauch gemeint sein. Mit LITTLE-Kern kann ein Kern mit niedriger Performance und niedrigem Leistungsverbrauch gemeint sein. Mit MIDdle-Kern kann ein Kern gemeint sein, dessen Leistungsverbrauch und Performance-Level zwischen dem big-Kern und dem LITTLE-Kern liegen. Der big-Kern, der LITTLE-Kern und der MIDdle-Kern können dynamisch Aufgabenvergaben entsprechend ihren Betriebsbedingungen erhalten, wenn sie die gleiche Speicherregion verwenden.
  • Zum Beispiel können die Kerne vom ersten Typ B1 und B2, die Kerne vom zweiten Typ L1, L2, L3 und L4 und die Kerne vom dritten Typ M1, M2, M3 und M4 über einen Bus 290 elektrisch miteinander verbunden sein. In einigen Ausführungsformen kann der Bus 290 zum Beispiel als AXI (Advanced Extensible Interface) implementiert sein, die auf einer AMBA (Advanced Microcontroller Bus Architecture) basiert.
  • Die Kerne vom ersten Typ B1 und B2, die Kerne vom zweiten Typ L1, L2, L3 und L4 und die Kerne vom dritten Typ M1, M2, M3 und M4 weisen unterschiedliche Leistungs-Performance-Effizienzen voneinander auf. Ein Leistungsverbrauch der Kerne vom ersten Typ B1 und B2, der Kerne vom zweiten Typ L1, L2, L3 und L4 und der Kerne vom dritten Typ M1, M2, M3 und M4 können entsprechend einer Bit-Breite einer Aufgabe und einer Betriebsfrequenz des Mehrkernprozessors 20 verändert werden. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 Kerne mit hoher Performance und hohem Leistungsverbrauch sein, die Kerne vom zweiten Typ L1, L2, L3 und L4 sind Kerne mit niedriger Performance und niedrigem Leistungsverbrauch, und die Kerne vom dritten Typ M1, M2, M3 und M4 können Kerne mit mittlerer Performance und mittlerem Leistungsverbrauch zwischen dem niedrigen und hohen Leistungsverbrauch sein.
  • Zum Beispiel können die Kerne vom ersten Typ B1 und B2 Kerne mit hoher Performance und hohem Leistungsverbrauch sein, die Kerne vom zweiten Typ L1, L2, L3 und L4 sowie die Kerne vom dritten Typ M1, M2, M3 und M4 können eine andere Performance und einen anderen Leistungsverbrauch aufweisen. Die Kerne vom ersten Typ B1 und B2 können manchmal mehr Leistung verbrauchen als die Kerne des anderen Typs, die Kerne vom zweiten Typ L1, L2, L3 und L4 können manchmal mehr Leistung verbrauchen als die Kerne des anderen Typs und die Kerne vom dritten Typ M1, M2, M3 und M4 können manchmal mehr Leistung verbrauchen als die Kerne des anderen Typs, um die gleiche Performance entsprechend der Bit-Breite der Aufgabe und der Betriebsfrequenz des Rechensystems 1 aufrechtzuerhalten. Wie in 1 beschrieben, kann daher, wenn die Aufgabe unter Berücksichtigung einer Variation des Leistungsverbrauchs der Kerne vom ersten Typ B1 und B2, der Kerne vom zweiten Typ L1, L2, L3 und L4, und der Kerne vom dritten Typ M1, M2, M3 und M4 entsprechend der Bit-Breite der ISA der Aufgabe und der Betriebsfrequenz an den Mehrkernprozessor 20 vergeben wird, ein Gesamtleistungsverbrauch des Mehrkernprozessors 20 reduziert werden, während seine Performance aufrechterhalten wird.
  • Das Kernauswahlmodul 110 kann einen Kern mit der höchsten Leistungs-Performance-Effizienz von den Kernen vom ersten Typ B1 und B2, den Kernen vom zweiten Typ L1, L2, L3 und L4 und den Kernen vom dritten Typ M1, M2, M3 und M4 des Mehrkernprozessors 20 basierend auf der ISA der Aufgabe auswählen, die von dem ISA-Identifizierungsmodul 100 identifiziert wird. Ferner kann das Aufgabenvergabemodul 120 die Aufgabe an den Kern vergeben, der von dem Kernauswahlmodul 110 ausgewählt wird.
  • Indem die Aufgabe an den Mehrkernprozessor 20 unter Berücksichtigung einer Veränderung eines Leistungsverbrauchs gemäß einer Betriebsfrequenz des Mehrkernprozessors 20 basierend auf der ISA der Aufgabe vergeben wird, kann der Leistungsverbrauch des Mehrkernprozessors 20 reduziert werden, während die Performance des Mehrkernprozessors 20 aufrechterhalten wird.
  • Nachfolgend wird eine beispielhafte Ausführungsform nur beschrieben, bei der der Mehrkernprozessor 20 als Tri-Cluster-Architektur implementiert ist, und die nachfolgend erläuterten Inhalte können bei einem Mehrkernprozessor 20 aus 1 oder einem Mehrkernprozessor mit einer beliebigen Struktur angewendet werden.
  • 3 stellt ein Rechensystem gemäß einer beispielhaften Ausführungsform dar.
  • Gemäß 3 kann sich ein Rechensystem 3 von dem Rechensystem 2 aus 2 unterscheiden. Zum Beispiel kann das Rechensystem 3 ferner eine Leistungs-Performance-Tabelle 112 umfassen.
  • Die Leistungs-Performance-Tabelle 112 kann Leistungs-Performance-Werte einer Mehrzahl von Kernen umfassen. Zum Beispiel kann jeder Leistungs-Performance-Wert einem Verhältnis eines Leistungsverbrauchs zu einer Betriebs-Performance von jedem Kern entsprechen. Zum Beispiel kann sich jeder Leistungs-Performance-Wert von jeder Leistungs-Performance-Effizienz unterschieden, was einem Verhältnis einer Betriebs-Performance zu einem Leistungsverbrauch von jedem Kern entsprechen kann. Zum Beispiel so, wie jeder Leistungs-Performance-Wert jedes Kerns erhöht wird, kann jede Leistungs-Performance-Effizienz von jedem Kern reduziert werden. Mit anderen Worten, jeder Leistungs-Performance-Wert von jedem Kern kann eine inverse Beziehung mit jeder Leistungs-Performance-Effizienz von jedem Kern aufweisen.
  • Die Leistungs-Performance-Werte von der Mehrzahl von Kernen können durch Verarbeitungsaufgaben mit unterschiedlichen ISA-Typen entsprechend einer Betriebsfrequenz bezogen werden. Zum Beispiel können die Leistungs-Performance-Werte der Mehrzahl von Kernen durch Verarbeitung einer ersten Aufgabe mit einem ersten ISA-Typ und einer zweiten Aufgabe mit einem zweiten ISA-Typ erzeugt werden, indem die Betriebsfrequenz gewobbelt (variiert) wird.
  • Die Leistungs-Performance-Werte der Mehrzahl von Kernen können in der Leistungs-Performance-Tabelle 112 separat entsprechend einer Aufgabe mit einer 32-Bit-ISA und einer Aufgabe mit einer 64-Bit-ISA gespeichert werden. Zum Beispiel können die Leistungs-Performance-Werte erste Leistungs-Performance-Werte umfassen, die durch Wobbeln der Betriebsfrequenz erhalten werden, wenn die Mehrzahl von Kernen eine Aufgabe mit einer 32-Bit-ISA durchführt, und zweite Leistungs-Performance-Werte, die durch Wobbeln der Betriebsfrequenz erhalten werden, wenn die Mehrzahl von Kernen eine Aufgabe mit einer 64-Bit-ISA durchführt. Ferner können die ersten und zweiten Leistungs-Performance-Werte in der Leistungs-Performance-Tabelle 112 separat entsprechend Typen der Mehrzahl von Kernen und Typen der ISA gespeichert werden. Zum Beispiel können die Leistungs-Performance-Werte dritte Leistungs-Performance-Werte umfassen, die durch Wobbeln der Betriebsfrequenz erhalten werden, wenn ein Kern von einem ersten Typ Aufgaben mit einer 32-Bit-ISA oder 64-Bit-ISA durchführt, und vierte Leistungs-Performance-Effizienzen, die durch Wobbeln der Betriebsfrequenz erhalten werden, wenn ein Kern von einem zweiten Typ Aufgaben mit einer 32-Bit-ISA oder einer 64-Bit-ISA durchführt.
  • Gemäß Implementierungsverfahren kann die Leistungs-Performance-Tabelle 112 separat oder nicht separat entsprechend ISA-Typen (Bit-Breiten) implementiert werden. Zum Beispiel kann die Leistungs-Performance-Tabelle 112 derart implementiert werden, dass sie eine erste Leistungs-Performance-Tabelle für eine 32-Bit-ISA und eine zweite Leistungs-Performance-Tabelle für eine 64-Bit-ISA umfasst. Alternativ kann die Leistungs-Performance-Tabelle 112 als einzige Leistungs-Performance-Tabelle implementiert werden, die Leistungs-Performance-Werte (oder Daten) für eine 32-Bit-ISA und Leistungs-Performance-Werte (oder Daten) für eine 64-Bit-ISA umfasst. Zum Beispiel kann die Leistungs-Performance-Tabelle 112 ferner eine Spalte umfassen, um die Leistungs-Performance-Daten für die 32-Bit-ISA und die Leistungs-Performance-Daten für die 64-Bit-ISA zu spezifizieren (zu definieren) bzw. zwischen diesen zu unterscheiden.
  • Das Kernauswahlmodul 110 kann einen Kern mit den höchsten Leistungs-Performance-Effizienzen (d. h., entsprechend dem niedrigsten Leistungs-Performance-Wert) aus einer Mehrzahl an Kernen auswählen, indem es sich auf eine Leistungs-Performance-Tabelle 112 bezieht. Zum Beispiel kann eine Leistungs-Performance-Effizienz ein Verhältnis einer Betriebs-Performance zu einem Leistungsverbrauch sein und ein Leistungs-Performance-Wert kann ein Verhältnis eines Leistungsverbrauchs zu einer Betriebs-Performance sein. Zum Beispiel wenn eine ISA einer Aufgabe als eine 32-Bit-ISA identifiziert wird, und wenn der Mehrkernprozessor 20 mit einer ersten Betriebsfrequenz betrieben wird, kann das Kernauswahlmodul 110 Leistungs-Performance-Werte der Kerne vom ersten Typ B1 und B2, Kerne vom zweiten Typ L1, L2, L3 und L4 und Kerne vom dritten Typ M1, M2, M3 und M4 bei der ersten Betriebsfrequenz vergleichen und kann einen Kern mit dem niedrigsten Leistungs-Performance-Wert auswählen (d. h. entsprechend der höchsten Leistungs-Performance-Effizienz).
  • Zum Beispiel wenn eine ISA einer Aufgabe als eine 64-Bit-ISA identifiziert wird, und wenn der Mehrkernprozessor 20 mit einer zweiten Betriebsfrequenz betrieben wird, kann das Kernauswahlmodul 110 Leistungs-Performance-Werte der Kerne vom ersten Typ B1 und B2, Kerne vom zweiten Typ L1, L2, L3 und L4 und Kerne vom dritten Typ M1, M2, M3 und M4 bei der zweiten Betriebsfrequenz vergleichen und kann einen Kern mit dem niedrigsten Leistungs-Performance-Wert auswählen (d. h. entsprechend der höchsten Leistungs-Performance-Effizienz). Ferner kann das Aufgabenvergabemodul 120 die Aufgabe an den Kern vergeben, der von dem Kernauswahlmodul 110 ausgewählt wird, sodass der ausgewählte Kern die Aufgabe mit der höchsten Leistungs-Performance-Effizienz durchführen kann. Zum Beispiel wenn anstelle dem ausgewählten Kern andere Kerne die Aufgabe durchführen können, können die Leistungs-Performance-Effizienzen der anderen Kerne niedriger sein als jene des ausgewählten Kerns.
  • Zum Beispiel wenn Aufgaben an eine Mehrzahl an Kernen eines Mehrkernprozessors vergeben werden, kann eine Änderung eines Leistungsverbrauchs von jedem Kern entsprechend einer Betriebsfrequenz und ISA-Typen bei der Aufgabenvergabe berücksichtigt werden. Daher kann der Mehrkernprozessor die Aufgaben mit der höchsten Leistungs-Performance-Effizienz unabhängig von einer Variation einer Betriebsfrequenz und ISA-Typen verarbeiten. Mit anderen Worten, indem die Aufgabe für jeden Kern unter Berücksichtigung einer Leistungsverbrauchsänderung entsprechend einer Betriebsfrequenz basierend auf ISAs vergeben wird, kann ein Leistungsverbrauch des Mehrkernprozessors 20 reduziert werden, während die Performance des Mehrkernprozessors 20 aufrechterhalten wird.
  • 4 stellt ein Diagramm zur Erläuterung einer Leistungs-Performance-Tabelle gemäß einer beispielhaften Ausführungsform dar. 5 stellt einen Betrieb des Rechensystems gemäß der Ausführungsform unter Bezugnahme auf 4 dar.
  • 4 stellt einen Graphen dar, der die Leistungs-Performance-Werte darstellt, die in der Leistungs-Performance-Tabelle 112 gespeichert sind, wenn die ISA der Aufgabe durch ein ISA-Identifizierungsmodul 100 als 32-Bit-ISA identifiziert wird, wie oben unter Bezugnahme auf 3 beschrieben. Eine horizontale Achse des Graphen kann eine Betriebsfrequenz des Mehrkernprozessors 20 bezeichnen und eine vertikale Achse kann Leistungs-Performance-Werte (z. B. ein Verhältnis eines Leistungsverbrauchs zu einer Betriebs-Performance) von einer Mehrzahl von Kernen des Mehrkernprozessors 20 bezeichnen.
  • Ein Graph B2 kann die Leistungs-Performance-Werte der Kerne vom ersten Typ B1 und B2 angeben, wenn die Kerne vom ersten Typ B1 und B2 die Aufgabe mit der 32-Bit-ISA durchführen, indem die Betriebsfrequenz gewobbelt wird. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 eine erste maximale Betriebsfrequenz fmax1 aufweisen.
  • Ein Graph L2 kann die Leistungs-Performance-Werte der Kerne vom zweiten Typ L1, L2, L3 und L4 angeben, wenn die Kerne vom zweiten Typ L1, L2, L3 und L4 die Aufgabe mit der 32-Bit-ISA durchführen, indem die Betriebsfrequenz gewobbelt wird. Zum Beispiel können die Kerne vom zweiten Typ L1, L2, L3 und L4 eine zweite maximale Betriebsfrequenz fmax2 aufweisen.
  • Ein Graph M2 kann die Leistungs-Performance-Werte der Kerne vom dritten Typ M1, M2, M3 und M4 angeben, wenn die Kerne vom dritten Typ M1, M2, M3 und M4 die Aufgabe mit der 32-Bit-ISA durchführen, indem die Betriebsfrequenz gewobbelt wird. Zum Beispiel können die Kerne vom dritten Typ M1, M2, M3 und M4 eine dritte maximale Betriebsfrequenz fmax3 aufweisen.
  • Beispielsweise kann die zweite maximale Betriebsfrequenz fmax 2 niedriger sein als die dritte maximale Betriebsfrequenz fmax3. Ferner kann die dritte maximale Betriebsfrequenz fmax3 niedriger sein als die erste maximale Betriebsfrequenz fmax1.
  • Zum Beispiel wenn der Mehrkernprozessor 20 bei einer ersten Frequenz f1 betrieben wird, kann das Kernauswahlmodul 110 die Kerne vom dritten Typ M1, M2, M3 und M4 als Kerne mit der höchsten Leistungs-Performance-Effizienz auswählen, da die Leistungs-Performance-Effizienz der Kerne vom dritten Typ M1, M2, M3 und M4 bei der ersten Frequenz f1 im Vergleich zu Kernen von anderen Typen am höchsten ist (z. B. die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4). Zum Beispiel können die Kerne vom zweiten Typ L1, L2, L3 und L4 nicht mit der ersten Frequenz f1 betrieben werden. Während die Kerne vom ersten Typ B1 und B2 mit der ersten Frequenz f1 betrieben werden können, kann ferner der Leistungs-Performance-Wert P2 der Kerne vom ersten Typ B1 und B2 bei der ersten Frequenz f1 größer sein als der Leistungs-Performance-Wert P1 der Kerne vom dritten Typ M1, M2, M3 und M4 (P2 > P1). Mit anderen Worten, die Leistungs-Performance-Effizienz der Kerne vom ersten Typ B1 und B2 kann niedriger sein als die Leistungs-Performance-Effizienz der Kerne vom dritten Typ M1, M2, M3 und M4. Wie oben beschrieben kann der Leistungs-Performance-Wert jedes Kerns eine inverse Beziehung zu einer Leistungs-Performance-Effizienz jedes Kerns aufweisen.
  • Diesbezüglich stellt 5 dar, dass das Kernauswahlmodul 110 einen Kern 220a aus den Kernen vom dritten Typ M1, M2, M3 und M4 bei der ersten Frequenz f1 auswählen kann.
  • Wenn dagegen zum Beispiel der Mehrkernprozessor 20 mit einer zweiten Frequenz f2 betrieben wird, die höher ist als die erste Frequenz f1, kann das Kernauswahlmodul 110 die Kerne vom ersten Typ B1 und B2 als Kerne auswählen, die die höchste Leistungs-Performance-Effizienz aufweisen. In 4 können die Kerne vom zweiten Typ L1, L2, L3 und L4 möglicherweise nicht mit der zweiten Frequenz f2 betrieben werden und die Kerne vom dritten Typ M1, M2, M3 und M4 können möglicherweise auch nicht mit der zweiten Frequenz f2 betrieben werden. Daher kann das Kernauswahlmodul 110, gemäß 5, die Kerne vom ersten Typ B1 und B2 als Kerne mit der höchsten Leistungs-Performance-Effizienz bei der zweiten Frequenz f2 auswählen. Ferner kann das Kernauswahlmodul 110 den Kern 200a aus den Kernen vom ersten Typ B1 und B2 derart auswählen, dass der ausgewählte Kern 200a die Aufgabe mit der 32-Bit-ISA bei der zweiten Frequenz f2 durchführen kann.
  • Zum Beispiel kann das Aufgabenvergabemodul 120 die Aufgabe mit der 32-Bit-ISA an den Kern 200a vergeben, der von dem Kernauswahlmodul 110 ausgewählt wurde. Wenn eine Aufgabenplanung durchgeführt wird, indem die Aufgabe mit der 32-Bit-ISA unter Berücksichtigung einer Veränderung eines Leistungsverbrauchs jedes Kerns gemäß der Betriebsfrequenz basierend auf der ISA der Aufgabe (z. B. 32-Bit-ISA) vergeben wird, kann der Leistungsverbrauch des Mehrkernprozessors 20 reduziert werden, während die Performance des Mehrkernprozessors 20 aufrechterhalten wird.
  • 6 stellt ein Diagramm zur Erläuterung einer Leistungs-Performance-Tabelle gemäß einer beispielhaften Ausführungsform dar. 7 stellt einen Betrieb des Rechensystems gemäß der beispielhaften Ausführungsform unter Bezugnahme auf 6 dar.
  • Gemäß 6 stellt ein Graph die Leistungs-Performance-Werte dar, die in der Leistungs-Performance-Tabelle 112 gespeichert sind, die oben unter Bezugnahme auf 3 beschrieben wurde, wenn die durch das ISA-Identifizierungsmodul 100 identifizierte ISA von der Aufgabe eine 64-Bit-ISA ist. Eine horizontale Achse des Graphen kann eine Betriebsfrequenz des Mehrkernprozessors 20 angeben und eine vertikale Achse kann einen Leistungs-Performance-Wert (z. B. ein Verhältnis eines Leistungsverbrauchs zu einer Betriebs-Performance) von einer Mehrzahl von Kernen des Mehrkernprozessors 20 angeben.
  • Ein Graph B1 kann Leistungs-Performance-Werte der Kerne vom ersten Typ B1 und B2 angeben, wenn die Kerne vom ersten Typ B1 und B2 die Aufgabe mit der 64-Bit-ISA durchführen, indem die Betriebsfrequenz gewobbelt wird. Zum Beispiel können die Kerne vom ersten Typ B1 und B2 eine erste maximale Betriebsfrequenz fmax1 aufweisen.
  • Ein Graph L1 kann Leistungs-Performance-Werte der Kerne vom zweiten Typ L1, L2, L3 und L4 bezeichnen, wenn die Kerne vom zweiten Typ L1, L2, L3 und L4 die Aufgabe mit der 64-Bit-ISA durchführen, indem die Betriebsfrequenz gewobbelt wird. Zum Beispiel können die Kerne vom zweiten Typ L1, L2, L3 und L4 eine zweite maximale Betriebsfrequenz fmax2 aufweisen.
  • Ein Graph M1 kann Leistungs-Performance-Werte der Kerne vom dritten Typ M1, M2, M3 und M4 angeben, wenn die Kerne vom dritten Typ M1, M2, M3 und M4 die Aufgabe mit der 64-Bit-ISA durchführen, indem die Betriebsfrequenz gewobbelt wird. Zum Beispiel können die Kerne vom dritten Typ M1, M2, M3 und M4 eine dritte maximale Betriebsfrequenz fmax3 aufweisen.
  • Beispielsweise kann die zweite maximale Betriebsfrequenz fmax2 niedriger sein als die dritte maximale Betriebsfrequenz fmax3. Ferner kann die dritte maximale Betriebsfrequenz fmax3 niedriger sein als die erste maximale Betriebsfrequenz fmax1.
  • Zum Beispiel wenn der Mehrkernprozessor 20 bei der ersten Frequenz f1 betrieben wird, kann das Kernauswahlmodul 110 die Kerne vom dritten Typ M1, M2, M3 und M4 als Kerne mit der höchsten Leistungs-Performance-Effizienz auswählen, da die Leistungs-Performance-Effizienz der Kerne vom dritten Typ M1, M2, M3 und M4 bei der ersten Frequenz f1 im Vergleich zu Kernen von anderen Typen am höchsten ist (z. B. die Kerne vom ersten Typ B1 und B2 und die Kerne vom zweiten Typ L1, L2, L3 und L4). Zum Beispiel können die Kerne vom zweiten Typ L1, L2, L3 und L4 nicht mit der ersten Frequenz f1 betrieben werden. Während die Kerne vom ersten Typ B1 und B2 bei der ersten Frequenz f1 betrieben werden können, kann die Leistungs-Performance-Effizienz der Kerne vom ersten Typ B1 und B2 ferner niedriger sein als die Leistungs-Performance-Effizienz der Kerne vom dritten Typ M1, M2, M3 und M4. Mit anderen Worten, der Leistungs-Performance-Wert P2 der Kerne vom ersten Typ B1 und B2 bei der ersten Frequenz f1 kann größer sein als der Leistungs-Performance-Wert P1 der Kerne vom dritten Typ M1, M2, M3 und M4 (P2 > P1).
  • Ferner stellt 5 dar, dass das Kernauswahlmodul 110 aus den Kernen vom dritten Typ M1, M2, M3 und M4 einen Kern 220a bei der ersten Frequenz f1 auswählen kann. Wenn dagegen zum Beispiel der Mehrkernprozessor 20 bei einer dritten Frequenz f3 betrieben wird, die höher ist als die erste Frequenz f1, kann das Kernauswahlmodul 110 die Kerne vom ersten Typ B1 und B2 als Kerne auswählen, die die höchste Leistungs-Performance-Effizienz aufweisen. Zum Beispiel können die Kerne vom zweiten Typ L1, L2, L3 und L4 nicht mit der dritten Frequenz f3 betrieben werden. Während die Kerne vom dritten Typ M1, M2, M3 und M4 bei der zweiten Frequenz f2 betrieben werden können, kann ferner die Leistungs-Performance-Effizienz der Kerne vom dritten Typ M1, M2, M3 und M4 niedriger sein als die Leistungs-Performance-Effizienz der Kerne vom ersten Typ B1 und B2 bei der dritten Frequenz f3. Mit anderen Worten, der Leistungs-Performance-Wert P4 der Kerne vom dritten Typ M1, M2, M3 und M4 bei der dritten Frequenz f3 kann größer sein als der Leistungs-Performance-Wert P3 der Kerne vom ersten Typ B1 und B2 (P4 > P3). Ferner stellt 5 dar, dass das Kernauswahlmodul 110 aus den Kernen vom ersten Typ B1 und B2 den Kern 200a (B1) bei der dritten Frequenz f3 auswählen kann.
  • Danach kann das Aufgabenvergabemodul 120 die Aufgabe mit der 64-Bit-ISA an den von dem Kernauswahlmodul 110 ausgewählten Kern vergeben. Wenn eine Aufgabenplanung durchgeführt wird, indem die Aufgabe mit der 64-Bit-ISA unter Berücksichtigung einer Veränderung eines Leistungsverbrauchs von jedem Kern gemäß der Betriebsfrequenz basierend auf der ISA der Aufgabe (z. B. 64-Bit-ISA) vergeben wird, kann der Leistungsverbrauch des Mehrkernprozessors 20 reduziert werden, während die Performance des Mehrkernprozessors 20 aufrechterhalten wird.
  • 7 stellt einen Betrieb eines Rechensystems gemäß einer beispielhaften Ausführungsform in Verbindung mit 6 dar. Alternativ kann das Kernauswahlmodul 110 in 5 anstelle des Kerns 200a (B1) den Kern 202a (B2) aus den Kernen vom ersten Typ B1 und B2 bei der dritten Frequenz f3 auswählen.
  • 8 stellt ein Verfahren zum Betreiben eines Rechensystems gemäß einer beispielhaften Ausführungsform dar. In 8 kann das Verfahren zum Betreiben des Rechensystems gemäß einer beispielhaften Ausführungsform ein Identifizieren einer ISA einer Aufgabe umfassen (S801). Ferner kann das obige Verfahren ein Auswählen eines Kerns mit der höchsten Leistungs-Performance-Effizienz aus der Mehrzahl von Kernen basierend auf der identifizierten ISA (S803) umfassen.
  • In einigen Ausführungsformen kann ein Auswählen eines Kerns mit der höchsten Leistungs-Performance-Effizienz ein Auswählen des Kerns mit der höchsten Leistungs-Performance-Effizienz unter Bezugnahme auf die Leistungs-Performance-Tabelle 112 umfassen, die Leistungs-Performance-Werte der Mehrzahl von Kernen entsprechend der Betriebsfrequenz und jeder ISA umfassen kann. Zudem kann das obige Verfahren ferner eine Vergabe der Aufgabe an den ausgewählten Kern umfassen (S805).
  • 9 stellt ein Verfahren zum Betreiben eines Rechensystems gemäß einer beispielhaften Ausführungsform dar. Gemäß 9 kann das Verfahren zum Betreiben des Rechensystems ein Ausführen einer Aufgabe auf dem ausgewählten Kern umfassen (S901). Ferner kann das Verfahren eine Neuauswahl eines Kerns mit der höchsten Leistungs-Performance-Effizienz aus der Mehrzahl von Kernen während eines Betriebs des Rechensystems umfassen (S903). Zum Beispiel kann sich der ausgewählte Kern aus S805 oder S901 von dem neu ausgewählten Kern in S903 unterscheiden. Zum Beispiel kann der ausgewählte Kern aus S805 und S901 ausgewählt werden, wenn das Rechensystem bei einer ersten Betriebsfrequenz betrieben wird, und der neu ausgewählte Kern in S903 kann ausgewählt werden, wenn das Rechensystem bei einer zweiten Betriebsfrequenz betrieben wird. Zum Beispiel kann der ausgewählte Kern aus S805 und S901 ausgewählt werden, wenn das Rechensystem eine Aufgabe mit einem ersten ISA-Typ (z. B. 32-Bit-ISA) verarbeitet, und der neu ausgewählte Kern in S903 kann ausgewählt werden, wenn das Rechensystem eine Aufgabe mit einem zweiten ISA-Typ (64-Bit-ISA) verarbeitet. Zudem kann das Verfahren auch ein Verschieben oder eine Neuvergabe der Aufgabe, die an den ausgewählten Kern vergeben wird, an den neu ausgewählten Kern umfassen (S905).
  • Gemäß einigen Ausführungsformen ist es möglich, eine Aufgabenplanung durchzuführen, die fähig ist, einen Leistungsverbrauch eines Mehrkernprozessors, der jeden Kern umfasst, weiter zu reduzieren, während eine Betriebs-Performance des Mehrkernprozessors gewährleistet wird, indem die Aufgabe unter Berücksichtigung einer Leistungsverbrauchsveränderung von jedem Kern entsprechend einer Betriebsfrequenz und jeder ISA vergeben wird. So kann der Mehrkernprozessor die Aufgabe mit der höchsten Leistungs-Performance-Effizienz unabhängig von einer Variation einer Betriebsfrequenz und ISA-Typen verarbeiten.
  • Die beispielhaften Ausführungsformen können bei verschiedenen elektronischen Vorrichtungen und elektronischen Systemen angewendet werden, die die Bildverarbeitungsvorrichtung umfassen. Die beispielhaften Ausführungsformen können zum Beispiel bei Systemen angewendet werden, z. B. einem Mobiltelefon, einem Smartphone, einem Tablet-Computer, einem Laptop-Computer, einem Personal Digital Assistant (PDA), einem portablen Multimedia-Player (PMP), einer Digitalkamera, einer tragbaren Spielekonsole, einem Musik-Player, einem Camcorder, einem Video-Player, einer Navigationsvorrichtung, einer Wearable-Vorrichtung, einer Vorrichtung des Internets der Dinge (IoT), einer Vorrichtung des Internets von Allem (Internet of Everything; IoE), einem E-Book-Reader, einer Virtual-Reality(VR)-Vorrichtung, einer Augmented-Reality(AR)-Vorrichtung, einer Robotervorrichtung, usw. Zudem können die beispielhaften Ausführungsformen bei verschiedenen Vorrichtungen und Systemen angewendet werden, die eine Bildverarbeitung erfordern, z. B. einer Automobilkamera, einer medizinischen Kamera, usw.
  • Abschließend zur detaillierten Beschreibung wird es für einen Fachmann ersichtlich sein, dass an den bevorzugten Ausführungsformen viele Variationen und Abwandlungen vorgenommen werden können, ohne im Wesentlichen von den Prinzipien der vorliegenden Offenbarung abzuweichen. Daher werden die offenbarten bevorzugten Ausführungsformen der Offenbarung nur in einem allgemeinen und beschreibenden Sinne verwendet und nicht zum Zwecke der Beschränkung.
  • Es wurden hier beispielhafte Ausführungsformen offenbart, und obwohl konkrete Begriffe verwendet werden, werden sie in einem allgemeinen und beschreibenden Sinn verwendet und sollen so und nicht zum Zwecke einer Beschränkung interpretiert werden. Es wird für einen Fachmann bei Einreichung der vorliegenden Anmeldung ersichtlich sein, dass in einigen Fällen, außer anderweitig angegeben, Merkmale, Eigenschaften und/oder Elemente, die in Verbindung mit einer bestimmten Ausführungsform beschrieben werden, allein oder in Kombination mit Merkmalen, Eigenschaften und/oder Elementen verwendet werden können, die in Verbindung mit anderen Ausführungsformen beschrieben wurden. Dementsprechend wird es für einen Fachmann ersichtlich sein, dass verschiedene Veränderungen hinsichtlich der Form und Details vorgenommen werden können, ohne von Geist und Umfang der vorliegenden Erfindung, wie in den nachfolgenden Ansprüchen dargelegt, abzuweichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • KR 1020180135615 [0001]

Claims (20)

  1. Rechensystem aufweisend: einen ISA-Identifizierer (100), um eine ISA (Befehlssatzarchitektur) einer Aufgabe zu identifizieren; eine Kernauswahlvorrichtung (110), um einen Kern mit einer höchsten Leistungs-Performance-Effizienz aus einer Mehrzahl an Kernen (B1, B2, L1-L4, M1-M4) basierend auf der identifizierten ISA auszuwählen; und einen Aufgabenzuordner (120), um die Aufgabe an den ausgewählten Kern zu vergeben.
  2. Rechensystem nach Anspruch 1, wobei die Kernauswahlvorrichtung (110) den Kern mit der höchsten Leistungs-Performance-Effizienz auswählt, indem sie auf eine Leistungs-Performance-Tabelle (112) Bezug nimmt.
  3. Rechensystem nach Anspruch 2, wobei die Leistungs-Performance-Tabelle (112) Leistungs-Performance-Effizienzen der Mehrzahl von Kernen (B1, B2, L1-L4, M1-M4) gemäß einer Betriebsfrequenz und einem ISA-Typ umfasst.
  4. Rechensystem nach Anspruch 1, wobei die Mehrzahl von Kernen einen Kern von einem ersten Typ (B1, B2), der eine erste maximale Betriebsfrequenz hat, und einen Kern von einem zweiten Typ (L1-L4) umfasst, der eine zweite maximale Betriebsfrequenz hat, die niedriger ist als die erste maximale Betriebsfrequenz, und die Kernauswahlvorrichtung (110) den Kern auswählt, der von dem Kern vom ersten Typ (B1, B2) und dem Kern vom zweiten Typ (L1-L4) die höchste Leistungs-Performance-Effizienz hat.
  5. Rechensystem nach Anspruch 4, wobei die Kernauswahlvorrichtung (110) während eines Betriebs des Rechensystems einen Kern neu auswählt, der von dem Kern vom ersten Typ (B1, B2) und dem Kern vom zweiten Typ (L1-L4) eine höchste Leistungs-Performance-Effizienz hat, und der Aufgabenzuordner (120) die Aufgabe, die an den ausgewählten Kern vergeben wurde, an den neu ausgewählten Kern verschiebt.
  6. Rechensystem nach Anspruch 4, wobei die Mehrzahl von Kernen (B1, B2, L1-L4, M1-M4) ferner einen Kern von einem dritten Typ (M1-M4) umfasst, der eine dritte maximale Betriebsfrequenz hat, die niedriger ist als die erste maximale Betriebsfrequenz, und die höher ist als die zweite maximale Betriebsfrequenz, und die Kernauswahlvorrichtung (110) den Kern auswählt, der von dem Kern vom ersten Typ (B1, B2), dem Kern vom zweiten Typ (L1-L4) und dem Kern vom dritten Typ (M1-M4) die höchste Leistungs-Performance-Effizienz hat.
  7. Rechensystem nach Anspruch 6, wobei die Kernauswahlvorrichtung (110) während eines Betriebs des Rechensystems einen Kern neu auswählt, der von dem Kern vom ersten Typ (B1, B2), dem Kern vom zweiten Typ (L1-L4) und dem Kern vom dritten Typ (L1-L4) eine höchste Leistungs-Performance-Effizienz hat, und der Aufgabenzuordner (120) die Aufgabe, die an den ausgewählten Kern vergeben wurde, an den neu ausgewählten Kern verschiebt.
  8. Rechensystem aufweisend: einen Kern von einem ersten Typ (B1, B2), der eine erste maximale Betriebsfrequenz hat; einen Kern von einem zweiten Typ (L1-L4), der eine zweite maximale Betriebsfrequenz hat, die niedriger ist als die erste maximale Betriebsfrequenz; einen ISA-Identifizierer (100), um eine ISA (Befehlssatzarchitektur) einer Aufgabe zu identifizieren; eine Kernauswahlvorrichtung (110), um den Kern vom zweiten Typ (B1, B2) auszuwählen, wenn eine Leistungs-Performance-Effizienz des Kerns vom zweiten Typ (L1-L4) höher ist als die Leistungs-Performance-Effizienz des Kerns vom ersten Typ (B1, B2), und um den Kern vom ersten Typ (B1, B2) auszuwählen, wenn die Leistungs-Performance-Effizienz des Kerns vom ersten Typ (B1, B2) höher ist als die Leistungs-Performance-Effizienz des Kerns vom zweiten Typ (L1-L4), bei einer Betriebsfrequenz, die niedriger ist als die zweite maximale Betriebsfrequenz, basierend auf der identifizierten ISA; und einen Aufgabenzuordner (120), um die Aufgabe an den ausgewählten Kern zu vergeben.
  9. Rechensystem nach Anspruch 8, wobei die Kernauswahlvorrichtung (110) einen Kern mit einer höheren Leistungs-Performance-Effizienz auswählt, indem sie auf eine Leistungs-Performance-Tabelle (112) Bezug nimmt.
  10. Rechensystem nach Anspruch 9, wobei die Leistungs-Performance-Tabelle (112) Leistungs-Performance-Effizienzen von dem Kern vom ersten Typ (B1, B2) und dem Kern vom zweiten Typ (L1-L4) gemäß der Betriebsfrequenz basierend auf der identifizierten ISA umfasst.
  11. Rechensystem nach Anspruch 8, wobei die Kernauswahlvorrichtung (110) während eines Betriebs des Rechensystems einen Kern neu auswählt, der von dem Kern vom ersten Typ (B1, B2) und dem Kern vom zweiten Typ (L1-L4) eine höhere Leistungs-Performance-Effizienz hat, und der Aufgabenzuordner (120) die Aufgabe, die an den ausgewählten Kern vergeben wurde, an den neu ausgewählten Kern verschiebt.
  12. Rechensystem nach Anspruch 8, ferner aufweisend: einen Kern vom dritten Typ (M1-M4), der eine dritte maximale Betriebsfrequenz hat, die niedriger ist als die erste maximale Betriebsfrequenz und die höher ist als die zweite maximale Betriebsfrequenz, wobei die Kernauswahlvorrichtung (110) einen Kern auswählt, der von dem Kern vom ersten Typ (B1, B2), dem Kern vom zweiten Typ (L1-L4) und dem Kern vom dritten Typ (M1-M4) eine höchste Leistungs-Performance-Effizienz hat.
  13. Rechensystem nach Anspruch 12, wobei die Kernauswahlvorrichtung (110) während eines Betriebs des Rechensystems einen Kern neu auswählt, der von dem Kern vom ersten Typ (B1, B2), dem Kern vom zweiten Typ (L1-L4) und dem Kern vom dritten Typ (M1-M4) eine höchste Leistungs-Performance-Effizienz hat, und der Aufgabenzuordner (120) die Aufgabe, die an den ausgewählten Kern vergeben wurde, an den neu ausgewählten Kern verschiebt.
  14. Verfahren zum Betreiben eines Rechensystems, wobei das Verfahren Folgendes aufweist: Identifizieren einer ISA (Befehlssatzarchitektur) einer Aufgabe; Auswählen eines Kerns mit einer höchsten Leistungs-Performance-Effizienz aus einer Mehrzahl an Kernen (B1, B2, L1-L4, M1-M4) basierend auf der identifizierten ISA; und Vergabe der Aufgabe an den ausgewählten Kern.
  15. Verfahren zum Betreiben des Rechensystems nach Anspruch 14, wobei das Auswählen des Kerns mit der höchsten Leistungs-Performance-Effizienz ein Auswählen des Kerns mit der höchsten Leistungs-Performance-Effizienz durch Bezugnahme auf eine Leistungs-Performance-Tabelle (112) umfasst.
  16. Verfahren zum Betreiben des Rechensystems nach Anspruch 15, wobei die Leistungs-Performance-Tabelle (112) Leistungs-Performance-Effizienzen von der Mehrzahl der Kerne (B1, B2, L1-L4, M1-M4) gemäß einer Betriebsfrequenz und einem ISA-Typ umfasst.
  17. Verfahren zum Betreiben des Rechensystems nach Anspruch 14, wobei die Mehrzahl von Kernen (B1, B2, L1-L4, M1-M4) einen Kern vom ersten Typ (B1, B2), der eine erste maximale Betriebsfrequenz hat, und einen Kern vom zweiten Typ (L1-L4) umfasst, der eine zweite maximale Betriebsfrequenz hat, die niedriger ist als die erste maximale Betriebsfrequenz, und ein Auswählen des Kerns mit der höchsten Leistungs-Performance-Effizienz ein Auswählen des Kerns mit der höchsten Leistungs-Performance-Effizienz von dem Kern vom ersten Typ (B1, B2) und dem Kern vom zweiten Typ (L1-L4) umfasst.
  18. Verfahren zum Betreiben des Rechensystems nach Anspruch 17, ferner aufweisend: Neuauswahl eines Kerns mit einer höchsten Leistungs-Performance-Effizienz von dem Kern vom ersten Typ (B1, B2) und dem Kern vom zweiten Typ (L1-L4) während eines Betriebs des Rechensystems; und Verschieben der Aufgabe, die an den ausgewählten Kern vergeben wurde, an den neu ausgewählten Kern.
  19. Verfahren zum Betreiben des Rechensystems nach Anspruch 17, wobei die Mehrzahl von Kernen (B1, B2, L1-L4, M1-M4) ferner einen Kern vom dritten Typ (M1-M4) umfasst, der eine dritte maximale Betriebsfrequenz hat, die niedriger ist als die erste maximale Betriebsfrequenz und die höher ist als die zweite maximale Betriebsfrequenz, und Auswählen des Kerns, der von dem Kern vom ersten Typ, dem Kern vom zweiten Typ und dem Kern vom dritten Typ die höchste Leistungs-Performance-Effizienz hat.
  20. Verfahren zum Betreiben des Rechensystems nach Anspruch 19, ferner aufweisend: Neuauswahl eines Kerns mit einer höchsten Leistungs-Performance-Effizienz von dem Kern vom ersten Typ (B1, B2), dem Kern vom zweiten Typ (L1-L4) und dem Kern vom dritten Typ (M1-M4) während eines Betriebs des Rechensystems; und Verschieben der Aufgabe, die an den ausgewählten Kern vergeben wurde, an den neu ausgewählten Kern.
DE102019117800.2A 2018-11-07 2019-07-02 Rechensystem und Verfahren zum Betreiben eines Rechensystems Pending DE102019117800A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0135615 2018-11-07
KR1020180135615A KR102552954B1 (ko) 2018-11-07 2018-11-07 컴퓨팅 시스템 및 컴퓨팅 시스템의 동작 방법

Publications (1)

Publication Number Publication Date
DE102019117800A1 true DE102019117800A1 (de) 2020-05-07

Family

ID=70459871

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019117800.2A Pending DE102019117800A1 (de) 2018-11-07 2019-07-02 Rechensystem und Verfahren zum Betreiben eines Rechensystems

Country Status (4)

Country Link
US (1) US11347563B2 (de)
KR (1) KR102552954B1 (de)
CN (1) CN111158868A (de)
DE (1) DE102019117800A1 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210016707A (ko) * 2019-08-05 2021-02-17 삼성전자주식회사 성능효율을 바탕으로 한 스케줄링 방법, 스케줄링 장치 및 컴퓨터 판독가능 저장 매체
US20210124615A1 (en) * 2019-10-29 2021-04-29 Thomas Klingenbrunn Thread scheduling based on performance metric information
US11586472B2 (en) * 2019-12-10 2023-02-21 Advanced Micro Devices, Inc. Method of task transition between heterogenous processors
CN115390921A (zh) * 2021-05-21 2022-11-25 华为技术有限公司 一种调度方法、装置、系统和计算设备
US11797074B2 (en) * 2021-05-25 2023-10-24 Google Llc Multi-mode integrated circuits with balanced energy consumption

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180135615A (ko) 2017-06-13 2018-12-21 변무원 엠보싱이 구비된 열반사판

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004171234A (ja) 2002-11-19 2004-06-17 Toshiba Corp マルチプロセッサシステムにおけるタスク割り付け方法、タスク割り付けプログラム及びマルチプロセッサシステム
US8615647B2 (en) 2008-02-29 2013-12-24 Intel Corporation Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state
US9507640B2 (en) 2008-12-16 2016-11-29 International Business Machines Corporation Multicore processor and method of use that configures core functions based on executing instructions
CA2695564C (en) * 2010-02-26 2017-05-30 Lesley Lorraine Shannon Modular re-configurable profiling core for multiprocessor systems-on-chip
US9268611B2 (en) * 2010-09-25 2016-02-23 Intel Corporation Application scheduling in heterogeneous multiprocessor computing platform based on a ratio of predicted performance of processor cores
US8793686B2 (en) 2011-06-08 2014-07-29 Microsoft Corporation Operating system decoupled heterogeneous computing
US9720730B2 (en) * 2011-12-30 2017-08-01 Intel Corporation Providing an asymmetric multicore processor system transparently to an operating system
US8996902B2 (en) * 2012-10-23 2015-03-31 Qualcomm Incorporated Modal workload scheduling in a heterogeneous multi-processor system on a chip
US9448829B2 (en) * 2012-12-28 2016-09-20 Intel Corporation Hetergeneous processor apparatus and method
US9612879B2 (en) 2013-08-01 2017-04-04 Texas Instruments Incorporated System constraints-aware scheduler for heterogeneous computing architecture
KR20160004152A (ko) * 2014-07-02 2016-01-12 삼성전자주식회사 멀티 프로세서의 태스크(task) 우선순위 결정 방법 및 이를 구현하는 전자장치
US10031574B2 (en) * 2015-05-20 2018-07-24 Mediatek Inc. Apparatus and method for controlling multi-core processor of computing system
KR20160137030A (ko) * 2015-05-22 2016-11-30 한국전자통신연구원 씨피유 주파수 제어 장치 및 방법
US9626295B2 (en) 2015-07-23 2017-04-18 Qualcomm Incorporated Systems and methods for scheduling tasks in a heterogeneous processor cluster architecture using cache demand monitoring
US20170212575A1 (en) * 2016-01-21 2017-07-27 Mediatek Inc. Power budget allocation method and apparatus for generating power management output according to system setting of multi-core processor system and target power budget
CN106250235A (zh) * 2016-07-26 2016-12-21 张升泽 基于多内核芯片的多任务调度方法及系统
US20180095792A1 (en) * 2016-10-05 2018-04-05 Mediatek Inc. Multi-core system including heterogeneous processor cores with different instruction set architectures
CN108334405A (zh) * 2017-01-20 2018-07-27 阿里巴巴集团控股有限公司 频率异构cpu,频率异构实现方法、装置及任务调度方法
US11435802B2 (en) * 2017-05-01 2022-09-06 Drexel University Work load scheduling for multi core systems with under-provisioned power delivery
US10921876B2 (en) * 2018-04-26 2021-02-16 Mediatek Inc. Runtime power table index adjustment for performance and power management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180135615A (ko) 2017-06-13 2018-12-21 변무원 엠보싱이 구비된 열반사판

Also Published As

Publication number Publication date
KR20200052558A (ko) 2020-05-15
US11347563B2 (en) 2022-05-31
KR102552954B1 (ko) 2023-07-06
CN111158868A (zh) 2020-05-15
US20200142754A1 (en) 2020-05-07

Similar Documents

Publication Publication Date Title
DE102019117800A1 (de) Rechensystem und Verfahren zum Betreiben eines Rechensystems
DE112005001277B4 (de) Verfahren und Vorrichtung zum Vektorisieren mehrerer Eingabebefehle
DE69819686T2 (de) Objekt und verfahren zum bereitstellen eines effizienten mehrbenutzerzugriff auf verteilten betriebssystemkernkode durch instanzierung
DE112014004794B4 (de) Zuteilen von Kartenabgleichaufgaben durch Cluster-Server im Internet der Fahrzeuge
DE112018006769B4 (de) Erweiterte zwischenspeicherzuweisung basierend auf virtuellen knotenressourcen
DE112016005536T5 (de) Bestimmen von reihenfolgen einer ausführung eines neuronalen netzes
DE102012216568A1 (de) Scheduling und Managen von Rechentasks mit unterschiedlichen Ausführungsprioritätsstufen
DE112018005167T5 (de) Aktualisieren von trainingsdaten
DE102009038454A1 (de) System und Verfahren zum Reduzieren einer Ausführungsdivergenz in Parallelverarbeitungsarchitekturen
DE112007003602T5 (de) Backup-Reihen-Zuordnungsvorrichtung, Speicher-Reparaturvorrichtung, Backup-Reihen-Zuordnungsverfahren, Speicher-Herstellungsverfahren und Programm
DE102013017640A1 (de) Verteilte gekachelte Zwischenspeicherung
DE112018004222T5 (de) Datenbankaufteilung
DE112017005063T5 (de) Verwalten eines Speichers mit niedrigstem Kohärenzpunkt (LPC) mithilfe eines Dienstschichtadapters
DE112020004067T5 (de) Hybride daten-modell-parallelität für effizientes deep learning
DE112018004462T5 (de) Abfrageverarbeitung
DE112021006604T5 (de) Dynamisches in-rangordnung-bringen von facetten
DE102018107860A1 (de) System und Verfahren zum Zugriff auf Daten in einem Mehrkern-Verarbeitungssystem, um Zugriffe auf externe Speicher zu verringern
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
DE112012005572T5 (de) Ausgleichen einer Bandbreite für mehrere Anforderer, die ein gemeinsam genutztes Speichersystem verwenden
DE112019005043T5 (de) Streamzuweisung unter verwendung von stream-guthaben
DE102020118000A1 (de) Verfahren, systeme, herstellungsartikel und einrichtungen zum verwalten der speicherzuordnung
DE102017206808A1 (de) Verfahren und Vorrichtung zur Zuweisung von Rechenaufgaben
CN107193650B (zh) 一种在分布式集群中调度显卡资源的方法和装置
DE102015211316A1 (de) Verfahren zur Kommunikation zwischen Softwarekomponenten in einem Kraftfahrzeug
DE102021112336A1 (de) Fahrzeugzuordnungsvorrichtung, fahrzeug und terminal

Legal Events

Date Code Title Description
R012 Request for examination validly filed