DE10124768A1 - Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen - Google Patents

Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen

Info

Publication number
DE10124768A1
DE10124768A1 DE2001124768 DE10124768A DE10124768A1 DE 10124768 A1 DE10124768 A1 DE 10124768A1 DE 2001124768 DE2001124768 DE 2001124768 DE 10124768 A DE10124768 A DE 10124768A DE 10124768 A1 DE10124768 A1 DE 10124768A1
Authority
DE
Germany
Prior art keywords
task
tasks
resource
properties
entered
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.)
Ceased
Application number
DE2001124768
Other languages
English (en)
Inventor
Georg Braun
Alexander Benedix
Bernd Klehn
Gunnar Krause
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE2001124768 priority Critical patent/DE10124768A1/de
Priority to PCT/DE2002/001716 priority patent/WO2002095583A2/de
Priority to TW91110501A priority patent/TW567416B/zh
Publication of DE10124768A1 publication Critical patent/DE10124768A1/de
Ceased legal-status Critical Current

Links

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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen in Multiprozessor beziehungsweise Multiressourcensysteme durch einen effizienteren Verteilungsmechanismus für Systemprozesse (Tasks). Die Steigerung der Effizienz wird dadurch erreicht, daß alle Tasks in eine Tasktabelle (2) eingetragen werden und die Tasktabelle (2) für alle Systemressourcen (3) zugänglich ist und jede freie Systemressource (3) versucht, sich einen Task aus der Tasktabelle (2) zu holen.

Description

Die Erfindung betrifft ein Verfahren zur schnelleren Ausfüh­ rung von Datenverarbeitungsprozessen in Multiprozessor bezie­ hungsweise Multiressourcensystemen (Systemressourcen) durch einen effizienteren Verteilungsmechanismus für Systemprozesse (Tasks).
Bisher wurden die anstehenden Tasks durch einen sogenannten Scheduler auf die vorhandenen Systemressourcen verteilt. Die Systemressourcen sind typischerweise mehrere Mikroprozessoren des gleichen Typs oder andere Hardwareressourcen, wie z. B. Integerrecheneinheit, Hauptspeicher, Floating-point- Recheneinheit, DSP-Unit, Graphikprozessor. Bei dieser passi­ ven Verteilung zeigt eine Systemresource zunächst an, daß sie bereit ist, Tasks abzuarbeiten und wartet auf die Verteilung durch den Scheduler.
Dies hat den Nachteil, daß eine Kontrolleinheit stets über­ prüfen muß, welche Systemressource frei ist und je nach Er­ gebnis der Überprüfung den nächsten Task an eine freie Sy­ stemressource verteilen muß.
Der Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen in Multiprozessor beziehungsweise Multiressourcensysteme aufzu­ zeigen, durch welches eine effizientere Verteilung der Sy­ stemprozesse an die Systemressourcen erfolgt.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß alle Systemprozesse beziehungsweise Tasks in eine Tasktabelle ein­ getragen werden, die Tasktabelle für alle Systemressourcen zugänglich ist und jede freie Systemressource versucht, sich einen Task aus der Tasktabelle zu holen.
Gemäß dem erfindungsgemäßen Verfahren hat jede Systemressour­ ce eine aktive Holschuld von der Tasktabelle, so daß eine Sy­ stemressource versucht, einen neuen Task aus der Tasktabelle zu holen, sobald diese ihren letzten Task abgearbeitet hat.
Gemäß einer bevorzugten Ausführungsform wird jeder Task mit seinen Taskeigenschaften, wie zum Beispiel Priorität, Securi­ tylevel, Abhängigkeit von anderen Tasks etc., in die Taskta­ belle eingetragen.
Sobald nun eine Systemressource einen Task abgearbeitet hat, versucht diese je nach voreingestellten Optimierungszielen (z. B. Geschwindigkeit, Taskpriorität, Leistungsverbrauch) den entsprechenden nächsten Task von der Tasktabelle zu holen und auszuführen.
Auch bei Multiressourcensystemen besteht gemäß einer bevor­ zugten Ausführungsform die Möglichkeit, daß spezielle Res­ sourcen (zum Beispiel eine DSP-Unit) sich abhängig von be­ stimmten Taskeigenschaften und voreingestellten Optimierungs­ zielen bestimmte Tasks (zum Beispiel MP3-Encoding) aussuchen, die sie aufgrund ihrer internen Struktur effizient bearbeiten können.
Die Zuordnung zwischen Ressource und Task kann durch eine Im­ plementierung in der Ressource selbst beziehungsweise durch die Eintragung von Taskeigenschaften in der Tasktabelle er­ folgen.
Auch ist es möglich, über eine Kombination der in den Res­ sourcen implementierten Eigenschaften beziehungsweise Opti­ mierungszielen und den Eigenschaften in der Tasktabelle die Zuordnung der Systemressourcen zu den Tasks festzulegen.
Beispielsweise kann eine Zuordnung über sogenannte Flags in der Tasktabelle erfolgen, die anzeigen, wie intensiv ein Task eine bestimmte Systemressourcen, wie Hauptspeicher, Integer­ rechnereinheit, Floating Point Unit Rechnereinheit, etc. be­ nutzt.
Weitere vorteilhafte Ausgestaltungen beziehungsweise weitere Vorteile der Erfindung sind in den Unteransprüchen sowie in der nachfolgenden Figurenbeschreibung offenbart.
Anhand eines in den Zeichnungen dargestellten Ausführungsbei­ spieles wird die Erfindung näher erläutert.
In den Zeichnungen zeigt die einzige Fig. 1 schematisch ei­ nen Aufbau zur Ausführung des erfindungsgemäßen Verfahrens.
Über eine Kontrolleinheit 1 werden die abzuarbeitenden Sy­ stemprozesse beziehungsweise Tasks in eine Tasktabelle 2 ein­ getragen, wobei mit der Tasktabelle 2 alle im System vorhan­ denen Systemressourcen 3 derart verbunden sind, daß sich jede Systemressource nach der Abarbeitung eines Tasks versucht, sich einen neuen Task aus der Tasktabelle 2 zu holen.
Jeder Task ist mit sogenannten Taskeigenschaften, wie Priori­ tät, Securitylevel, Abhängigkeiten von anderen Tasks sowie auch dem Anteil der Benutzung an Standardressourcen, wie Hauptspeicher, Integerrechnereinheit, Floating Point Rech­ nereinheit und so weiter, eingetragen.
Desweiteren können auch Optimierungsziele, wie Geschwindig­ keit, Leistungsverbrauch als Taskeigenschaften eingegeben sein. Ebenso können diese Optimierungsziele jedoch auch in den Systemressourcen implementiert sein.
Eine Systemressource 3 wird entweder gebildet durch einen Mi­ kroprozessor oder eine spezielle Ressource, wie zum Beispiel DSP-Unit, Hauptspeicher, Integerrecheneinheit, Floating Point Recheneinheit und so weiter.
Durch das erfindungsgemäße Verfahren erfolgt eine effektivere Verteilung der Systemprozesse beziehungsweise der Tasks. Die Kontrolleinheit 1 muß nicht mehr überprüfen, welche System­ ressource frei ist, und ist auch nicht mehr dafür zuständig, den nächsten Task an die Systemressourcen zu verteilen. Sie ist nur noch dafür zuständig, die abzuarbeiteriden Aufgaben in die Tasktabelle 2 einzutragen.
Auch ist durch das erfindungsgemäße Verfahren eine Bearbei­ tung der Tasks außerhalb der ursprünglichen seriellen Reihen­ folge (sogenannte Out of Order Execution) mit diesem Konzept vereinfacht möglich.

Claims (6)

1. Verfahren zur schnelleren Ausführung von Datenverarbei­ tungsprozessen in Multiprozessor beziehungsweise Multires­ sourcensystemen (Systemressourcen) durch einen effizienteren Verteilungsmechanismus für Systemprozesse (Tasks), dadurch gekennzeichnet, daß alle Tasks in eine Tasktabelle (2) eingetragen werden, die Tasktabelle (2) für alle Systemressourcen (3) zugänglich ist und jede freie Systemressource (3) versucht, sich einen Task aus der Tasktabelle (2) zu holen.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß jeder Task mit seinen Taskeigenschaften, wie zum Beispiel Priorität, Securitylevel, Abhängigkeit von anderen Tasks, in die Tasktabelle (2) eingetragen ist.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß sich die Systemressourcen (3) ihre Tasks abhängig von den Taskeigenschaften auswählen.
4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß entweder bei den Taskeigenschaften oder in der Systemressour­ ce Optimierungsziele, wie Geschwindigkeit, Leistungsverbrauch implementiert sind.
5. Verfahren nach einem der Ansprüche 2 bis 4, - dadurch gekennzeichnet, daß als Taskeigenschaften sogenannte Flags eingetragen sind, die anzeigen, wie intensiv ein Task bestimmte Standardressourcen, wie Hauptspeicher, Integerrecheneinheit, Floating Point Re­ cheneinheit, et cetera, benutzt.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Systemressource entweder durch einen Mikroprozessor oder durch eine spezielle Ressource, wie DSP-Unit, Hauptspeicher, Integerrecheneinheit, Floating Point Unit, Grafikprozessor, et cetera, gebildet ist.
DE2001124768 2001-05-21 2001-05-21 Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen Ceased DE10124768A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE2001124768 DE10124768A1 (de) 2001-05-21 2001-05-21 Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen
PCT/DE2002/001716 WO2002095583A2 (de) 2001-05-21 2002-05-13 Verfahren zur schnelleren ausführung von datenverarbeitungsprozessen
TW91110501A TW567416B (en) 2001-05-21 2002-05-20 Method for the faster execution of data processing processes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2001124768 DE10124768A1 (de) 2001-05-21 2001-05-21 Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen

Publications (1)

Publication Number Publication Date
DE10124768A1 true DE10124768A1 (de) 2002-12-12

Family

ID=7685616

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2001124768 Ceased DE10124768A1 (de) 2001-05-21 2001-05-21 Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen

Country Status (3)

Country Link
DE (1) DE10124768A1 (de)
TW (1) TW567416B (de)
WO (1) WO2002095583A2 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1153327A (ja) * 1997-08-01 1999-02-26 Nec Yonezawa Ltd マルチプロセッサシステム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2809962B2 (ja) * 1993-03-02 1998-10-15 株式会社東芝 資源管理方式
US6006249A (en) * 1997-08-19 1999-12-21 The Chase Manhattan Bank Method and apparatus for concurrent data processing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1153327A (ja) * 1997-08-01 1999-02-26 Nec Yonezawa Ltd マルチプロセッサシステム

Also Published As

Publication number Publication date
WO2002095583A2 (de) 2002-11-28
WO2002095583A3 (de) 2003-11-27
TW567416B (en) 2003-12-21

Similar Documents

Publication Publication Date Title
EP1831786B1 (de) Verfahren zur verteilung von rechenzeit in einem rechnersystem
EP0048767B1 (de) Prioritätsstufengesteuerte Unterbrechungseinrichtung
EP2829166B1 (de) Bildung von rüstfamilien auf bestückungslinien
DE102012210895A1 (de) Vorhersage der ungeordneten Parallelverarbeitung der Befehle von Threads in einem Multithread-Prozessor
DE102014005557A1 (de) Numerische Steuervorrichtung
DE2164793A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit
DE10124768A1 (de) Verfahren zur schnelleren Ausführung von Datenverarbeitungsprozessen
AT516108B1 (de) Produktionssystem und die entsprechende Methode
EP3705993B1 (de) System und verfahren zum auffinden und identifizieren von rechenknoten in einem netzwerk
DE102019219260A1 (de) Verfahren zum Betreiben einer Recheneinheit
DE69909118T9 (de) Vorrichtung und verfahren zur sicherung einer integrierten schaltung
DE102011100969A1 (de) Verfahren zum Betrieb mindestens einer Datenbank auf einem Hardwarepool
EP3726319A1 (de) Verfahren, vorrichtungen und system zum bearbeiten eines werkstücks
DE102022003661B3 (de) Rechenvorrichtung, Verfahren zur Lastverteilung für eine solche Rechenvorrichtung und Computersystem
DE2744909C2 (de) Programmierbare Steuereinrichtung für Fernmeldeanlagen von niedriger und mittlerer Kapazität, insbesondere zur Anwendung in Fernsprech-Vermittlungsanlagen
EP4141665A1 (de) Computer-implementiertes verfahren und system zur effizienten aufgaben-verteilung an geräte
DE102010019783A1 (de) Verfahren zum Durchführen eines Programmes zur Verarbeitung von Daten und entsprechendes System
EP4309477A1 (de) Verfahren und steuereinrichtung zur bestimmung mindestens einer festrüstung für eine bestückungslinie
EP1708086A2 (de) Computersystem und Verfahren zur Aufteilung und Zuteilung von Rechenleistung innerhalb eines Computersystems
WO1996033456A1 (de) Übertrag-auswahl-addierer mit einer vorermittlung der führenden nullstellen
EP3172671B1 (de) Verfahren zur parallelen verarbeitung von daten in einem rechnersystem mit mehreren rechnereinheiten und rechnersystem mit mehreren rechnereinheiten
DE112015000216T5 (de) Auswählen eines Hosts für eine virtuelle Maschine unter Verwendung einers Hardware-Multithreading-Parameters
DE102011015174A1 (de) Verfahren zum Betrieb mehrerer Prozessoren
DE102011106103A1 (de) Elektronische Vorrichtung und Verfahren zur Verarbeitung von Unterbrechungsanforderungen gemäß einem Prioritätsschema
EP1116107B1 (de) Verfahren zur ausführung einzelner algorithmen mittels einer rekonfigurierbaren schaltung und vorrichtung zur durchführung eines solchen verfahrens

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection