About: Dataflow architecture     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : yago:Group100031264, within Data Space : dbpedia.demo.openlinksw.com associated with source document(s)
QRcode icon
http://dbpedia.demo.openlinksw.com/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FDataflow_architecture&invfp=IFP_OFF&sas=SAME_AS_OFF

Dataflow architecture is a computer architecture that directly contrasts the traditional von Neumann architecture or control flow architecture. Dataflow architectures have no program counter, in concept: the executability and execution of instructions is solely determined based on the availability of input arguments to the instructions, so that the order of instruction execution is unpredictable, i.e., behavior is nondeterministic. Meanwhile, there is a clash of terminology, since the term dataflow is used for a subarea of parallel programming: for dataflow programming.

AttributesValues
rdf:type
rdfs:label
  • بنية تدفق البيانات (ar)
  • Datenfluss-Architektur (de)
  • Αρχιτεκτονική ροής δεδομένων (el)
  • Arquitectura de flujo de datos (es)
  • Dataflow architecture (en)
  • Architettura dataflow (it)
  • Architecture Dataflow (fr)
  • Архітектура потоків даних (uk)
rdfs:comment
  • Le dataflow (en français : flux de données) est une architecture où les données sont des entités actives qui traversent le programme de manière asynchrone, contrairement à l'architecture classique von Neumann, où elles attendent passivement en mémoire pendant que le programme est exécuté séquentiellement suivant le contenu du pointeur de programme (PC). On parle aussi d'ordinateur cadencé par les données. (fr)
  • بنية تدفق البيانات هي بنية حاسوب تتشابه بشكل كبير مع بنية فون نيومان التقليدية أو مع بنية التحكم في التدفق. لا تتضمن بنى تدفق البيانات عداد برنامج، أو (على الأقل من حيث المفهوم)، قابلية التعليمات للتنفيذ بل وعملية التنفيذ نفسها تتحدد فقط من خلال توفر مدخلات فرضية إلى التعليمات. تتناغم هياكل تدفق البيانات المتزامنة لتتوافق مع حجم العمل المقدم من خلال تطبيقات مسارات بيانات الوقت الحقيقي مثل توجيه الحزمة وفقًا لسرعة السلك. تتميز هياكل تدفق البيانات الحتمية بطبيعتها بقدرتها على تمكين المبرمجين من إدارة المهام المعقدة مثل موازنة حمل المعالج والتزامن والوصول إلى الموارد المشتركة. (ar)
  • Η αρχιτεκτονική ροής δεδομένων (dataflow architecture) είναι μια που έρχεται σε αντίθεση με την παραδοσιακή αρχιτεκτονική φον Νόιμαν ή αρχιτεκτονική . Οι αρχιτεκτονικές ροής δεδομένων δεν έχουν και (τουλάχιστον στη θεωρία) η δυνατότητα εκτέλεσης μιας εντολής καθώς και η ίδια η εκτέλεσή της εξαρτάται μόνο από τη διαθεσιμότητα των παραμέτρων εισόδου της εντολής. Αν και καμία εμπορικά επιτυχημένη αρχιτεκτονική υπολογιστή γενικού σκοπού δεν έχει χρησιμοποιήσει αρχιτεκτονική ροής δεδομένων, η αρχιτεκτονική έχει υλοποιηθεί με επιτυχία σε υλικό ειδικού σκοπού όπως στην ψηφιακή επεξεργασία σήματος, στη , στην και, πιο πρόσφατα, στην αποθήκευση δεδομένων. Έχει επίσης σχέση με πολλές αρχιτεκτονικές λογισμικού που χρησιμοποιούνται σήμερα, όπως η σχεδίαση των μηχανών των βάσεων δεδομένων και τα (el)
  • Eine Datenfluss-Architektur ist eine alternative Rechnerarchitektur zur sogenannten Von-Neumann-Architektur, nach der die allermeisten heute gängigen Rechner implementiert sind. Ein nach der Datenfluss-Architektur implementierter Rechner heißt Datenflussrechner. Datenflussrechner versuchen, die Möglichkeiten der Parallelverarbeitung ihrer Rechenaufträge durch das nebenläufige Ausführen einer Vielzahl von Threads auszunutzen. Implementierungen dieser Architektur waren experimentelle Multiprozessorrechner, einen kommerziellen Erfolg konnten Rechner dieser Art nicht verbuchen. Nachteilige Eigenschaften der Datenfluss-Architektur veranlassten die Entwicklung hybrider Rechner, welche die Vorteile sowohl der Datenfluss-Architektur als auch der Von-Neumann-Architektur vereinten; viele Konzepte, d (de)
  • Dataflow architecture is a computer architecture that directly contrasts the traditional von Neumann architecture or control flow architecture. Dataflow architectures have no program counter, in concept: the executability and execution of instructions is solely determined based on the availability of input arguments to the instructions, so that the order of instruction execution is unpredictable, i.e., behavior is nondeterministic. Meanwhile, there is a clash of terminology, since the term dataflow is used for a subarea of parallel programming: for dataflow programming. (en)
  • La arquitectura de flujo de datos es una arquitectura de computadores que contrasta directamente con la tradicional Arquitectura de von Neumann o de estructuras de control. Las arquitecturas de flujo de datos no se basan en un contador de programa (al menos conceptualmente) en tanto en cuanto la posibilidad de ejecución de las instrucciones solamente viene determinada por la disponibilidad de los argumentos de entrada de las instrucciones. Aunque ningún computador de éxito comercial ha utilizado este tipo de arquitectura, esta es muy relevante en muchas arquitecturas actuales de software, incluyendo el diseño de sistemas de bases de datos o de sistemas de . (es)
  • L'architettura Dataflow è un tipo di architettura dei calcolatori che contrasta con il paradigma dell'architettura di von Neumann, dato che pone al centro dell'architettura gli operandi da elaborare e non le operazioni che elaborano gli operandi. Concettualmente non necessita di un program counter dato che l'esecuzione delle istruzioni è governata dalla disponibilità degli operandi, appena tutti gli operandi di un'istruzione sono disponibili. (it)
  • Архітектура потоків даних (dataflow architecture) — архітектура обчислювальних машин, у якій процесом обчислень керує потік даних, котрі подорожують між обчислювальними пристроями у машині, де опрацьовуються, поступово «допроваджуючи» себе до «опрацьованого» стану. Однак водночас та воднораз, головні принципи машин з керуванням від потоку даних застосовуються в сучасних надпродуктивних процесорах (див. суперскалярність) з метою досягнення високого рівня паралелізму. (uk)
dcterms:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
sameAs
dbp:wikiPageUsesTemplate
has abstract
  • بنية تدفق البيانات هي بنية حاسوب تتشابه بشكل كبير مع بنية فون نيومان التقليدية أو مع بنية التحكم في التدفق. لا تتضمن بنى تدفق البيانات عداد برنامج، أو (على الأقل من حيث المفهوم)، قابلية التعليمات للتنفيذ بل وعملية التنفيذ نفسها تتحدد فقط من خلال توفر مدخلات فرضية إلى التعليمات. على الرغم من عدم نجاح استخدام أي مكونات كمبيوتر عامة لهيكلة تدفق بيانات على مستوى تجاري، فقد تم تطبيقها في مكونات متخصصة مثل المعالجة الرقمية للإشارة وتسيير الشبكات ومعالجة الرسوميات والقياس عن بعد، إلى جانب استخدامه مؤخرًا في تخزين البيانات. وتعد هيكلة تدفق البيانات في منتهى الأهمية للعديد من هياكل البرامج حاليًا بما في ذلك تصميمات محرك قاعدة البيانات ونظم الحوسبة المتوازية. تتناغم هياكل تدفق البيانات المتزامنة لتتوافق مع حجم العمل المقدم من خلال تطبيقات مسارات بيانات الوقت الحقيقي مثل توجيه الحزمة وفقًا لسرعة السلك. تتميز هياكل تدفق البيانات الحتمية بطبيعتها بقدرتها على تمكين المبرمجين من إدارة المهام المعقدة مثل موازنة حمل المعالج والتزامن والوصول إلى الموارد المشتركة. (ar)
  • Η αρχιτεκτονική ροής δεδομένων (dataflow architecture) είναι μια που έρχεται σε αντίθεση με την παραδοσιακή αρχιτεκτονική φον Νόιμαν ή αρχιτεκτονική . Οι αρχιτεκτονικές ροής δεδομένων δεν έχουν και (τουλάχιστον στη θεωρία) η δυνατότητα εκτέλεσης μιας εντολής καθώς και η ίδια η εκτέλεσή της εξαρτάται μόνο από τη διαθεσιμότητα των παραμέτρων εισόδου της εντολής. Αν και καμία εμπορικά επιτυχημένη αρχιτεκτονική υπολογιστή γενικού σκοπού δεν έχει χρησιμοποιήσει αρχιτεκτονική ροής δεδομένων, η αρχιτεκτονική έχει υλοποιηθεί με επιτυχία σε υλικό ειδικού σκοπού όπως στην ψηφιακή επεξεργασία σήματος, στη , στην και, πιο πρόσφατα, στην αποθήκευση δεδομένων. Έχει επίσης σχέση με πολλές αρχιτεκτονικές λογισμικού που χρησιμοποιούνται σήμερα, όπως η σχεδίαση των μηχανών των βάσεων δεδομένων και τα πλαίσια προγραμματισμού . Οι σύγχρονες (synchronous) αρχιτεκτονικές ροής δεδομένων ρυθμίζονται ώστε να ταιριάζουν με το φόρτο εργασίας που εμφανίζουν οι εφαρμογές δεδομένων πραγματικού χρόνου (real-time data path applications) όπως η προώθηση πακέτων (wire speed packet forwarding). Οι αρχιτεκτονικές ροής δεδομένων που είναι ντετερμινιστικής φύσης επιτρέπουν στον προγραμματιστή να χειρίζεται περίπλοκες εργασίες όπως η εξισορρόπηση φόρτου στον επεξεργαστή (processor load balancing) και ο συγχρονισμός και η πρόσβαση σε κοινούς πόρους . Οι αρχιτεκτονικές υλικού για ροή δεδομένων ήταν σημαντικό θέμα της έρευνας στην κατά τη δεκαετία του 1970 και στις αρχές της δεκαετίας του 1980. Ο του MIT υπήρξε πρωτοπόρος του πεδίου της αρχιτεκτονικής στατικής ροής δεδομένων ενώ η Μηχανή Ροής Δεδομένων του Μαντσεστερ (Manchester Dataflow Machine) και η αρχιτεκτονική MIT Tagged Token ήταν σημαντικά εγχειρήματα της δυναμικής ροής δεδομένων. Οι υπολογιστές στατικής ροής δεδομένων που χρησιμοποιούν στη σχεδίασή τους τις κλασικές διευθύνσεις μνήμης σαν ετικέτες εξάρτησης μεταξύ των δεδομένων ονομάζονται υπολογιστές στατικής ροής δεδομένων. Αυτοί οι υπολογιστές δεν επιτρέπουν σε πολλαπλά στιγμιότυπα της ίδιας ρουτίνας να εκτελούνται ταυτόχρονα γιατί οι απλές ετικέτες δε μπορούν να ξεχωρίσουν μεταξύ αυτών. Οι υπολογιστές δυναμικής ροής δεδομένων χρησιμοποιούν (CAM) και χρησιμοποιούν ετικέτες στη μνήμη για να διευκολύνουν τον παραλληλισμό. Συνήθως οι μεταγλωττιστές αναλύουν τον πηγαίο κώδικα του προγράμματος για εξαρτήσεις δεδομένων μεταξύ των εντολών ώστε να οργανώσουν καλύτερα τις ακολουθίες εντολών στα δυαδικά αρχεία που παράγουν. Οι εντολές οργανώνονται ακολουθιακά αλλά η ίδια η πληροφορία των εξαρτήσεων δεν καταγράφεται στα δυαδικά αρχεία. Τα δυαδικά αρχεία που μεταγλωττίζονται για έναν υπολογιστή ροής δεδομένων περιέχουν αυτήν την πληροφορία εξαρτήσεων. Ένας μεταγλωττιστής ροής δεδομένων καταγράφει αυτές τις εξαρτήσεις δημιουργώντας μοναδικές ετικέτες για κάθε εξάρτηση αντί να χρησιμοποιεί ονόματα μεταβλητών. Δίνοντας σε κάθε εξάρτηση μια μοναδική ετικέτα, τμήματα κώδικα του δυαδικού αρχείου που δεν έχουν εξαρτήσεις μεταξύ τους είναι δυνατό να εκτελεστούν εκτός σειράς (out of order) και παράλληλα. Τα προγράμματα φορτώνονται στην CAM ενός υπολογιστή δυναμικής ροής δεδομένων. Όταν όλα τα ορίσματα με ετικέτες μιας εντολής γίνουν διαθέσιμα (από έξοδο προηγούμενων εντολών ή από την είσοδο του χρήστη), η εντολή σημειώνεται σαν έτοιμη για εκτέλεση από μια (execution unit). Αυτό είναι γνωστό σαν ενεργοποίηση (activating) ή εκπυρσοκρότηση (firing) της εντολής. Όταν μια εντολή τελειώσει από τη μονάδα εκτέλεσης, τα δεδομένα εξόδου της αποθηκεύονται (με την ετικέτα της) στην CAM. Όσες εντολές εξαρτώνται από αυτό το συγκεκριμένο δεδομένα (που αναγνωρίζεται από την ετικέτα του) σημειώνονται στη συνέχεια σαν έτοιμες για εκτέλεση. Με αυτόν τον τρόπο, οι επόμενες εντολές εκτελούνται με τη σωστή σειρά, αποφεύγοντας . Αυτή η σειρά μπορεί να διαφέρει από την ακολουθιακή σειρά που είχε υπόψη του ο προγραμματιστής, την προγραμματισμένη σειρά. Κάθε εντολή, μαζί με τα απαιτούμενα ορίσματα δεδομένων της, στέλνεται σε μια μονάδα εκτέλεσης σαν ένα πακέτο, το οποίο είναι γνωστό σαν μονάδα εντολής (instruction token). Όμοια, τα δεδομένα εξόδου στέλνονται πίσω στην CAM σαν μονάδα δεδομένων (data token). Το πακετάρισμα των εντολών και των αποτελεσμάτων επιτρέπει την παράλληλη εκτέλεση των εντολών που είναι έτοιμες, σε μεγάλη κλίμακα. Τα δίκτυα ροής δεδομένων αφήνουν τις μονάδες εντολών στις μονάδες εκτέλεσης και επιστρέφουν τις μονάδες δεδομένων στην CAM. Σε αντίθεση με τη συμβατική αρχιτεκτονική φον Νόιμαν, οι μονάδες δεδομένων δεν αποθηκεύονται μόνιμα στη μνήμη, αλλά είναι προσωρινά μηνύματα που υπάρχουν μόνο όταν βρίσκονται στην πορεία προς τον αποθηκευτικό χώρο εντολών. Η έρευνα, όμως, δε μπόρεσε ποτέ να ξεπεράσει τα εξής προβλήματα που σχετίζονταν με: * Αποδοτική μετάδοση των μονάδων δεδομένων σε ένα μαζικά παράλληλο σύστημα. * Αποδοτική διεκπεραίωση μονάδων δεδομένων σε ένα μαζικά παράλληλο σύστημα. * Κατασκευή CAMs αρκετά μεγάλων ώστε να μπορούν να κρατούν τις εξαρτήσεις ενός πραγματικού προγράμματος. Οι εντολές και οι εξαρτήσεις δεδομένων τους αποδείχτηκε ότι ήταν πολύ λεπτού κόκκου (fine-grained) για να κυκλοφορούν αποδοτικά σε ένα μεγάλο δίκτυο. Δηλαδή, ο χρόνος που χρειάζονταν οι εντολές και τα αποτελέσματα με τις ετικέτες τους για να ταξιδέψουν διαμέσου ενός μεγάλου δικτύου συνδέσεων ήταν μεγαλύτερος από το χρόνο που χρειαζόταν για τον ίδιο τον υπολογισμό. Παρόλα αυτά, η (Out-of-order execution, OoO) έχει γίνει το βασικό παράδειγμα υπολογισμού από τη δεκαετία του 1990. Αποτελεί μια μορφή περιορισμένης ροής δεδομένων. Αυτό το παράδειγμα εισήγαγε την ιδέα ενός παραθύρου εκτέλεσης (execution window). Το παράθυρο εκτέλεσης ακολουθεί τη σειρά εκτέλεσης της αρχιτεκτονικής Φον Νόιμαν, αλλά μέσα στο παράθυρο οι εντολές επιτρέπεται να εκτελούνται σε σειρά εξαρτήσεων δεδομένων. Αυτό επιτυγχάνεται σε CPU που δίνουν δυναμικά ετικέτες στις εξαρτήσεις δεδομένων του κώδικα στο παράθυρο εκτέλεσης. Η λογική πολυπλοκότητα της ανίχνευσης των εξαρτήσεων δεδομένων περιορίζει τις CPU με OoO σε ένα μικρό αριθμό μονάδων εκτέλεσης (2-6) και θέτει όριο στο παράθυρο εκτέλεσης μεταξύ 32 και 200 εντολών, πολύ μικρότερο από όσο είχε αρχικά προταθεί για πλήρεις υπολογιστές ροής δεδομένων. (el)
  • Eine Datenfluss-Architektur ist eine alternative Rechnerarchitektur zur sogenannten Von-Neumann-Architektur, nach der die allermeisten heute gängigen Rechner implementiert sind. Ein nach der Datenfluss-Architektur implementierter Rechner heißt Datenflussrechner. Datenflussrechner versuchen, die Möglichkeiten der Parallelverarbeitung ihrer Rechenaufträge durch das nebenläufige Ausführen einer Vielzahl von Threads auszunutzen. Implementierungen dieser Architektur waren experimentelle Multiprozessorrechner, einen kommerziellen Erfolg konnten Rechner dieser Art nicht verbuchen. Nachteilige Eigenschaften der Datenfluss-Architektur veranlassten die Entwicklung hybrider Rechner, welche die Vorteile sowohl der Datenfluss-Architektur als auch der Von-Neumann-Architektur vereinten; viele Konzepte, die typisch für die Datenfluss-Architektur sind, „überlebten“ auf diese Weise und sind aufgrund dieser Entwicklung in den allermeisten heutigen Rechnern wiederzufinden. (de)
  • Dataflow architecture is a computer architecture that directly contrasts the traditional von Neumann architecture or control flow architecture. Dataflow architectures have no program counter, in concept: the executability and execution of instructions is solely determined based on the availability of input arguments to the instructions, so that the order of instruction execution is unpredictable, i.e., behavior is nondeterministic. Although no commercially successful general-purpose computer hardware has used a dataflow architecture, it has been successfully implemented in specialized hardware such as in digital signal processing, network routing, graphics processing, telemetry, and more recently in data warehousing, and artificial intelligence. It is also very relevant in many software architectures today including database engine designs and parallel computing frameworks. Synchronous dataflow architectures tune to match the workload presented by real-time data path applications such as wire speed packet forwarding. Dataflow architectures that are deterministic in nature enable programmers to manage complex tasks such as processor load balancing, synchronization and accesses to common resources. Meanwhile, there is a clash of terminology, since the term dataflow is used for a subarea of parallel programming: for dataflow programming. (en)
  • La arquitectura de flujo de datos es una arquitectura de computadores que contrasta directamente con la tradicional Arquitectura de von Neumann o de estructuras de control. Las arquitecturas de flujo de datos no se basan en un contador de programa (al menos conceptualmente) en tanto en cuanto la posibilidad de ejecución de las instrucciones solamente viene determinada por la disponibilidad de los argumentos de entrada de las instrucciones. Aunque ningún computador de éxito comercial ha utilizado este tipo de arquitectura, esta es muy relevante en muchas arquitecturas actuales de software, incluyendo el diseño de sistemas de bases de datos o de sistemas de . Este tipo de arquitecturas de hardware constituyó una de las principales ramas de investigación sobre arquitectura de computadores en los años 70 y principios de los 80. Jack Dennis del MIT abrió el camino en el campo de las arquitecturas de flujo de datos estático, mientras que la Manchester Dataflow Machine y la arquitectura MIT Tagged Token fueron algunos de los mayores proyectos en flujo de datos dinámico. Los diseños que emplean direcciones convencionales de memoria como marcas de dependencias de datos son conocidos como máquinas de flujo de datos estático. Estas máquinas no permitían la ejecución simultánea de varias instancias de una misma subrutina porque la forma de etiquetar los datos no diferenciaba entre ellas. Aquellos diseños basados en memoria de contenido direccionable o CAM son llamados máquinas de flujo dinámico de datos. Normalmente, los compiladores analizan el código fuente del programa en busca de dependencias de datos entre instrucciones para organizar mejor la secuencia en los ficheros binarios de salida. Las instrucciones son organizadas de forma secuencial, pero la información acerca de las dependencias no se graba en los binarios. Sin embargo, los ficheros binarios compilados en una máquina de flujo de datos sí contienen esta información. Un compilador de flujo de datos graba estas dependencias creando etiquetas únicas para cada dependencia en lugar de utilizar nombres variables. Al nombrar cada dependencia de forma unívoca, se consigue que los segmentos de código no dependientes en el fichero binario sean ejecutados sin problemas fuera de orden o en paralelo. Los programas se cargan en la memoria CAM del computador de flujo dinámico. Cuando todos los operandos etiquetados de una instrucción pasan a estar disponibles (esto es, han recibido la salida de instrucciones previas y/o la entrada de usuario), la instrucción se marca como preparada para su ejecución. Este proceso es conocido como activación o firing. Una vez que la instrucción es completada, su salida es almacenada junto con la correspondiente etiqueta en la memoria CAM. Cualquier instrucción que sea dependiente de este dato en concreto (identificado por el valor de su etiqueta) es entonces marcada como preparada para su ejecución. De este modo, las instrucciones subsiguientes son ejecutadas en el orden correcto, evitando la aparición de condiciones de carrera. Este orden puede diferir del orden secuencial considerado por el programador. Una instrucción, junto con los operandos requeridos, es transmitida a una unidad de ejecución como un paquete, también conocido como señal de instrucción. De forma similar, los datos de salida son transmitidos de vuelta a la memoria CAM como señal de datos. El empaquetado de instrucciones y resultados permite la ejecución paralela a gran escala de instrucciones preparadas. Las redes de flujo de datos reparten las señales de instrucción a las unidades de ejecución y devuelven a la memoria CAM las señales de datos. En contraste con la Arquitectura de von Neumann convencional, las señales de datos no son almacenadas de forma permanente en memoria, sino que son mensajes transitorios que solamente existen durante el tránsito de información que se produce en el almacenamiento de la instrucción. La investigación, sin embargo, nunca se preocupó de tratar problemas relacionados con: * Emisión eficiente de las señales de datos e instrucciones en sistemas paralelos masivos * Construcción de memorias CAM lo suficientemente grandes como para almacenar todas las dependencias de un programa real Se probó que las instrucciones y sus dependencias de datos eran una unidad demasiado pequeña para trabajar en grandes redes. Esto es, el tiempo de transmisión de las instrucciones y los correspondientes resultados etiquetados era mucho mayor que el tiempo realmente necesario para su procesamiento. Sin embargo, la ejecución fuera de orden se ha convertido en el paradigma computacional por excelencia desde los años 90. Es una forma de flujo de datos restringido. Este paradigma introdujo la idea de ventana de ejecución, que sigue el orden secuencial de la arquitectura de von Neumann; sin embargo, dentro de la ventana se permite que las instrucciones sean completadas en el orden de las dependencias de datos. Esto se consigue en procesadores que etiquetan dinámicamente las dependencias de datos en la ventana de ejecución. La complejidad lógica de mantener el rastro de las dependencias de datos de forma dinámica restringe a los procesadores basados en ejecución fuera de orden a un reducido número de ejecuciones (de 2 a 6) y limita el tamaño de la ventana de ejecución de 32 a 200 instrucciones, mucho menor que las utilizadas en las máquinas puras de flujo de datos. (es)
  • Le dataflow (en français : flux de données) est une architecture où les données sont des entités actives qui traversent le programme de manière asynchrone, contrairement à l'architecture classique von Neumann, où elles attendent passivement en mémoire pendant que le programme est exécuté séquentiellement suivant le contenu du pointeur de programme (PC). On parle aussi d'ordinateur cadencé par les données. (fr)
  • L'architettura Dataflow è un tipo di architettura dei calcolatori che contrasta con il paradigma dell'architettura di von Neumann, dato che pone al centro dell'architettura gli operandi da elaborare e non le operazioni che elaborano gli operandi. Concettualmente non necessita di un program counter dato che l'esecuzione delle istruzioni è governata dalla disponibilità degli operandi, appena tutti gli operandi di un'istruzione sono disponibili. Nei progetti che prevedono l'utilizzo di memoria convenzionale, nella quale i dati sorgente sono indirizzati tramite tag, l'architettura viene definita dataflow statica. Queste macchine non sono in grado di eseguire più istanze della stessa procedura dato che i tag non sono differenziati per istanza ma solo per dati sorgente. Nei progetti che utilizzano la content addressable memory (CAM) sono chiamate dataflow dinamiche, queste utilizzano i tag per velocizzare l'esecuzione parallela. (it)
  • Архітектура потоків даних (dataflow architecture) — архітектура обчислювальних машин, у якій процесом обчислень керує потік даних, котрі подорожують між обчислювальними пристроями у машині, де опрацьовуються, поступово «допроваджуючи» себе до «опрацьованого» стану. Фактично, у архітектурах з керуванням від потоків даних, на відміну від класичних архітектур з керуванням від потоків команд (див. напр. Архітектура фон Ноймана, Гарвардська архітектура), процесом обчислень керує безпосередньо потік даних, а не послідовність команд. Критерієм того, що деякий обчислювальний пристрій у машині може розпочати обчислення, є готовність усіх необхідних до проведення обчислення операндів. Тому у машинах з керуванням від потоку даних, на відміну від фон-нойманівської та подібних послідовних архітектур, операції можуть виконуватись паралельно та незалежно одна від одної. Тобто машина з керуванням від потоку даних не має потреби у централізованому керуванні послідовністю виконання, у лічильниках команд, тощо, та взагалі у будь-якому централізованому керуванні. Програма машини з керуванням від потоку даних зазвичай надається у вигляді графа потоків даних, на якому зображено шляхи руху даних через операційні пристрої. Наданий граф демонструє програму знаходження коренів квадратного рівняння. Операційні пристрої показані незаштрихованими кружечками з позначками операцій, а заштрихованими кружечками показані розмножувачі даних, функція яких є наочною. Вхідні дані А, B та C (коефіцієнти рівняння), подорожують графом, «перетворюючись» в результаті на шукані корені рівняння X та Y. Як бачимо, за умови наявності всіх операндів на момент започаткування обчислень, виконання обчислень може відбуватись одночасно у декількох напрямках на графі (оператори, що можуть за таких умов опрацьовувати операнди паралельно, забарвлені однаковим кольором). Навіть за умови, коли операнд не готовий, незалежні від цього операнда гілки обчислень все одно можуть виконуватись доти, доки обчислення на операційних пристроях-споживачах будуть незалежними від цього операнда. Також слід зазначити, що архітектури з керуванням від потоку даних є доволі незвичними у програмуванні, що у свою чергу є вадою у порівнянні з фон-нойманівськими архітектурами. Однак водночас та воднораз, головні принципи машин з керуванням від потоку даних застосовуються в сучасних надпродуктивних процесорах (див. суперскалярність) з метою досягнення високого рівня паралелізму. (uk)
gold:hypernym
prov:wasDerivedFrom
page length (characters) of wiki page
foaf:isPrimaryTopicOf
is Link from a Wikipage to another Wikipage of
Faceted Search & Find service v1.17_git139 as of Feb 29 2024


Alternative Linked Data Documents: ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3330 as of Mar 19 2024, on Linux (x86_64-generic-linux-glibc212), Single-Server Edition (378 GB total memory, 60 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2024 OpenLink Software