DYNAMIC PARALLELIZATION OF A CALCULATION PROCESS

A system for generating a parallel calculation plan to evaluate a rule-set or a rule-based expression list by spilling the list of rule-based expressions into multiple task units and reconfiguring all independent task units at the same calculation levels into several parallelized task groups such th...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: KOLACHALA, Subrahmanyam, RODDENBERRY, Larry, MOHAN, Anoop, HUANG, Dengsheng, PATEL, Bimal, BLOEMEKE, Eric, LANG, Weigang, HOLLAND, Philip, SHETTY, Kiran, HUANG, Zhibin, COULTER, Scott, XU, Jianwu, HONG, Tak, KHOSRAVI, Mehdi
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A system for generating a parallel calculation plan to evaluate a rule-set or a rule-based expression list by spilling the list of rule-based expressions into multiple task units and reconfiguring all independent task units at the same calculation levels into several parallelized task groups such that task units within each task group may be scheduled for parallel execution across a cluster of processing nodes. The parallelization may be dynamically determined based on generated tasks but may further be subject to an additional layer of parallelization based on range-based splitting of each task into multiple parallel executable subtasks. The final parallelized calculation plan may include a set of sequentially ordered task groups based on logical dependencies and problem partitioning with information regarding parallelized execution of each task group. L'invention concerne un système pour générer un plan de calcul parallèle afin d'évaluer un ensemble de règles ou une liste d'expressions à base de règles par subdivision de la liste d'expressions à base de règles en de multiples unités de tâches et reconfiguration de toutes les unités de tâches indépendantes à des niveaux de calcul identiques en plusieurs groupes de tâches parallélisés, de sorte que des unités de tâches dans chaque groupe de tâches peuvent être ordonnancées pour une exécution parallèle dans un groupe de noeuds de traitement. La parallélisation peut être déterminée de manière dynamique sur la base de tâches générées, mais peut être également soumise à une couche supplémentaire de parallélisation sur la base d'une subdivision à base de plages de chaque tâche en de multiples sous-tâches exécutables parallèles. Le plan de calcul parallélisé final peut comprendre un ensemble de groupes de tâches ordonnés séquentiellement sur la base de dépendances logiques et de segmentation de problèmes avec des informations concernant l'exécution parallélisée de chaque groupe de tâches.