77327

DATAFLOW BASED DISTRIBUTED COMPUTING METHODS. SYSTEM PROTOTYPE

Научная статья

Информатика, кибернетика и программирование

Different methods re pplied to simplify the progrmming nd execution of prllel progrms. On the one hnd universl tools for utomtic progrm prlleliztion both for execution on shred memory nd for multicomputer systems re being developed. The gol of tht design is to simplify prllel progrm development but without significnt loss in the effectiveness of the progrm codes execution. Term tsk nmes the progrm which reds during its execution the dt items with specific nmes from storge nd s the result...

Английский

2015-02-02

20.5 KB

0 чел.

DATAFLOW BASED DISTRIBUTED COMPUTING METHODS. SYSTEM PROTOTYPE.

M.O. Bakhterev, P.A. Vasev

IMM UrB RAS, Yekaterinburg

The usage of parallel and distributed computing systems is accompanied with big expenditures, connected with programming for such a systems. The problem is that modern popular parallel programming tools - MPI and OpenMP - are quite complex to apply. Programmer needs to care about distribution of computational tasks, synchronization, data exchange and so on.

Different methods are applied to simplify the programming and execution of parallel programs. On the one hand, universal tools for automatic program parallelization (both for execution on shared memory and for multicomputer systems) are being developed. On the other hand, the environments for solving the particular task classes (in general, it concerns applications with high level of data parallelism) are being created. Also, the universal instruments, trying to simplify the technical side of the process of parallel and distributed systems programming, are being developed.

Sometimes, creating such a tools, developers are trying to make use of nonstandard calculus paradigms. One of them is Dataflow [1]. Some variants of Dataflow are used when developing processor architectures, supercomputers as whole, software organization of computational threads in bounds of single process, and interprocess communications in distributed environment.

At present work the authors, relying on the analysis of different, including their own, Dataflow models, are developing methods and tools for programming in parallel and distributed environments. The goal of that design is to simplify parallel program development, but without significant loss in the effectiveness of the program codes execution.

Suggested methods of computation arose as a consequence of long theoretical research of the operating system for distributed computations [2]. Methods are based on the storage, task and rule conceptions. Storage keeps named data, to which three operations could be applied - write (create), read and delete. At that the stored data are self-sufficient - they are not queues, but certain items of information with unique names. Term task names the program, which reads during its execution the data items with specific names from storage, and as the result of it's own execution form new data, which are written to storage. Term rule designates the construction, which defines the conditions and the parameters of the program launch. The rule contains:

1. The list of names, which are needed to execute task.

2. The list of correspondence between global data (been in storage) names and local names (which are used inside program).

3. The list of tasks (programs), which should be launched.

4. Actions, performed in the case of successful execution of the tasks (3).

The rule is considered ready for execution, when all data with names from the list (1) are present in storage. After successful execution the rule is deleted from the list of the rules being executed.

The process of programming and carrying out the calculations is unfolding in the following manner. The programmer prepares programs of tasks; at that, theoretically in the frame of one calculation experiment any combination of programming languages and target hardware could be used. For instance, some tasks could be executed on graphics processors.

Also, the programmer forms initialization file, in which prime rules of the system are described. That rule set could be increased later on - during task execution or performing the closing actions in rules. Besides rules there are initial data specified in initialization file, they will be placed in storage.

Further, the programmer gives run command. During the runtime the computing environment finds the ready to execute rules and launches tasks specified in them on suitable available resources. As the result of that, some of rules complete with forming new data and releasing resources for other rules execution. The environment continues the search and execution of rules till the rule set exhausting, the job suspension from the outside or the exposure of error.

Described methods possess a number of valuable capabilities, such as ability to carry out the computational experiment on hybrid architectures, the ability to alter the computing nodes amount during runtime, the ability to support applications in the  globally-distributed environments, the ability to automatically create checkpoints, the ability to suspend and resume the computation in the transparent to programmer manner, the ability to use distributed data storages, and so on.

The authors are developing the prototype of the system based on the suggested methods: the RIDE project. The early samples of programs show the realizability of the system and the elegance of the code for rules description. The authors believe that evolution of the running research will result in the achievement of the main goal - to make the process of distributed parallel programs development simpler and more effective.

Reference

1. Dennis J., Data Flow Supercomputers // Computer, Vol.13, No.11, pp.48-56, 1980

2. Bakhterev M.O. The description of parallel computations in the terms of closures // 10Th International Workshop "Supercomputing and Mathematical Simulations", RFNC-VNIIEF, Sarov, p. 31-32, 2008.


 

А также другие работы, которые могут Вас заинтересовать

39152. Философия для аспирантов 1.73 MB
  Основное внимание уделено философскому анализу науки как специфической системы знания формы духовного производства и социального института. Рассмотрены общие закономерности развития науки ее генезис и история структура уровни и методология научного исследования актуальные проблемы философии науки роль науки в жизни человека и общества перспективы ее развития и ряд других проблем. Рассчитано прежде всего на аспирантов и соискателей готовящихся к экзаменам кандидатского минимума а также всех желающих составить собственное представление...
39153. КОНКУРЕНТОСПОСОБНОСТЬ ТОВАРА: АНАЛИЗ И УПРАВЛЕНИЕ 164 KB
  Целью данной работы и является 1) Определение и анализ тех факторов, за счет которых формируется конкурентоспособность товара, 2) Определить, что же это собственно такое – конкурентоспособность товара и 3) Каковы пути повышения конкурентоспособности товаров, выпускаемых предприятием.
39154. Оценка конкурентоспособности товаров и услуг на ООО «сервис-техника» 237.5 KB
  Самое главное в экономике любой страны – это малый бизнес. Во многих экономически развитых странах, по словам электронных СМИ, доля продукции, производимой малыми предприятиями в годовом ВВП, доходит до 60%. В этих странах на малых предприятиях работает минимум половина всего населения. Новые предприятия успешно создаются и функционируют, производят качественную и конкурентоспособную продукцию.
39155. Классификация компьютеров 496.94 KB
  Специалисты а таковыми являются в наш век все подростки старше десяти лет не преминут заметить что компьютер это не мозг по крайне мере пока уточнят особенно талантливые. Это простонапросто еще один инструмент еще одно устройство придуманное для того чтобы облегчить наш труд или усилить нашу власть над природой. Именно поэтому я и решил что моя будущая специальность будет связана с компьютерами: вопреки опасениям писателейфантастов человек не стал придатком машины а получил возможность лучше проявить свои...
39156. Ассортимент и контроль качества персональных компьютеров и их комплектующих в магазине Северного филиала компании R-Style в г.Нижневартовск Ханты-Мансийского АО 949.46 KB
  Процесс взаимодействия человека с ЭВМ насчитывает уже более 40лет. До недавнего времени в этом процессе могли участвовать только специалисты-инженеры, математики - программисты, операторы. В последние годы произошли кардинальные изменения в области вычислительной техники. Благодаря разработке и внедрению микропроцессоров в структуру ЭВМ появились малогабаритные
39157. Анализ и прогнозирование рыночной конъюнктуры компьютерного рынка в г. Петропавловске-Камчатском 299.75 KB
  Даже десять лет назад мало кто мог себе представать что практически у половины работающего населения будут в домашнем пользовании персональные компьютеры. Причем этот процесс лавинно продолжается и очень велика вероятность того что современные вычислительные системы скоро появятся в каждом доме. 3 Анализ ассортиментного ряда Для того чтобы полностью понять и правильно охарактеризовать рынок компьютерных продаж необходимо проанализировать все разнообразие компьютеров и компьютерных комплектующих которые продают фирмы. Служат для тех...
39158. Классификация компьютеров и их систем 1.44 MB
  Компьютер (англ. computer — «вычислитель»), электронная вычислительная машина (ЭВМ) — вычислительная машина, предназначенная для передачи, хранения и обработки информации.
39159. Основные этапы развития компьютерной техники. Сравнительные характеристики компьютеров разных поколений 184.61 KB
  Сравнительные характеристики компьютеров разных поколений. Возникновение и развитие персональных компьютеров. Новые виды ПК Возникновение и развитие персональных компьютеров. Для того чтобы лучше представить чем же всетаки персональные компьютеры отличаются от других электронновычислительных машин начнем рассматривать историю возникновения ПК с момента появления первых ЭВМ не забывая при этом более ранние достижения в истории вычислительной техники благодаря которым...
39160. Дослідження механізму управління кредитною діяльністю в комерційному банку «Кредитпромбанк» 1.07 MB
  Теоретичні засади управління кредитною діяльностю банку 1.1 Сутність та причини кредитної діяльності банку 1.2 Особливості формування кредитного портфелю банку 1.3 Система управління кредитним портфелем банку Розділ 2.