supercomp91 (Раздаточные материалы)

PDF-файл supercomp91 (Раздаточные материалы) Модели параллельных вычислений и DVM технология разработки параллельных программ (53475): Другое - 7 семестрsupercomp91 (Раздаточные материалы) - PDF (53475) - СтудИзба2019-09-18СтудИзба

Описание файла

Файл "supercomp91" внутри архива находится в следующих папках: Раздаточные материалы, SAGE. PDF-файл из архива "Раздаточные материалы", который расположен в категории "". Всё это находится в предмете "модели параллельных вычислений и dvm технология разработки параллельных программ" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст из PDF

Object Oriented Parallel ProgrammingExperiments and ResultsJenq Kuen LeeDennis GannonDepartment of Computer ScienceIndiana UniversityBloomington, IN 47401AbstractWe present an object-oriented, parallel programming paradigm, called the distributed collection modeland an experimental language PC++ based on thismodel. In the distributed collection model, programmers can describe the data distribution of elementsamong processors to utilize memory locality and a collection construct is employed to build distributed structures. The model also supports the express of massiveparallelism and a new mechanism for building hierarchies of abstractions.We have implemented PC++ on a variety of machines including VAX8800, Alliant FX/8, AlliantFX/2800, and BBN GP1000. Our experience withapplication programs in these environments as well asperformance results are also described in the paper.1 IntroductionMassively parallel systems consisting of thousandsof processors oer huge aggregate computing power.Unfortunately, a new machine of this class is almostuseless unless there is a reasonable mechanism forporting software to it so that the resulting code willboth be ecient and scale well.

FORTRAN 90 hasbeen proposed as a standard for SIMD \data parallel"systems but it cannot be compiled well for distributedmemory machines. Linda[3] is an excellent model fordistributed MIMD processing, but it is not well suitedto systems like the connection machine or the MasParMP1. In this paper we describe a model of programming and an experimental programming language anda compiler project that we hope can be used on a variety of parallel architectures.There are four major issues to be addressed toachieve scalability and portability.

First, many of theMIMD machines available today use a collection of local memories to implement the global memory space.The access to global memory space will normally takeO(Log2 p) time where p is the number of processors,while the access to the processor's local memory willonly take O(1) time. Therefore the language shouldprovide some means for programmers to utilize memory locality in their programs.Second, algorithm designers tend to think interms of synchronous operations on distributed datastructures[5], such as arrays, sets, trees and so forth,but conventional languages provide no support forthe ecient implementation of these abstractions in acomplex memory hierarchy. In the distributed memory case, programmers must decompose each datastructure into a collection of pieces each owned bya single processor.

Furthermore, access to a remotecomponent of the data must be accomplished throughcomplex \send" and \receive" protocols. The globalview of traditional data structures, such as matrices,grids and so on, becomes unreadable and complicatedand decomposing all data structures this way leads toprograms which can be extraordinary complicated.Third, as is the case with large sequential programs,it must be possible to use a hierarchy of abstractions torelegate details to the proper level in a program[2]. Byusing hierarchy of abstractions in concurrent programming, it is easy to hide the low level implementationand to build libraries and reusable implementation ofdistributed programs.Fourth, the language should allow programmers tospecify massive parallelism.

In an object-based model,programmers tend to think in terms of a distributedcollection of elements. To initial a parallel action, anelement method can be invoked by the collection whichmeans that the corresponding method is applied to allelements of the collection simultaneously. This mechanism enables us to express massive parallelism andisolate the communication structure of the computation from the basic local computations.The object-based model presented here, called Dis-tributed Collection Model, will be shown to supporta hierarchy of abstractions can be used to hide lowlevel implementation and build reusable abstractionsof distributed data structures.While we feel that this is an extremely powerfuland elegant construction, there are still several thingsmissing in CA.

First, the model can not specify howthe elements in an aggregate should be distributedamong processors and the percentage of processor resources that should be involved in an aggregate. Whenthe number of elements in an aggregate is signicantlygreater than the number of processors, simple and natural distributions specied by programmers often canbest utilize memory locality resulting in optimal algorithms. The second shortcoming is that the modeldoes not utilize the natural parallelism of an aggregate.

As we will see later, the invocation of an aggregate method \inherited" from the element class of theaggregate can be used as a mechanism to explicitlycontrol concurrency. Thus, the invocation of methods of the element by the aggregate can be used torepresent the massive parallelism.all four of the points described above.

We also describe a parallel C++ language, called PC++, with acollection construct as our rst approximation to thismodel. We have implemented PC++ on a variety ofmachines including VAX8800, Alliant FX/8, AlliantFX/2800, and BBN GP1000 systems. Our experiencewith building application programs as well as experimental results on these machines are described in thepaper.The remainder of this paper is organized as follows.In section 2, we examine two programming paradigmsthat have formed the basis of our thinking: the Concurrent Aggregate model and the Kali programminglanguage. We will look closely at these two languagesto see how they support the issues described above andwe will also examine them what is missing.

Section 3describes the Distributed Collection Model. Section4 presents the parallel C++ language with the collection construct based on the distributed collectionmodel. Section 5 describes several applications constructed by utilizing collection libraries. The experimental results are also presented. Finally, section 6gives our conclusion.2.2 Kali Programming ModelThe Kali programming environment[5] is targetedto scientic applications. The fundamental goal ofKali is to allow programmers to build distributed datastructures and treat distributed data structures as single objects.

Kali thus provides a software layer supporting a global name space on distributed memoryarchitectures. In Kali, programmers can specify theprocessor topology on which the program is to be executed, the distribution of the data structures acrossprocessors, and the parallel loops and how the loopsshould be distributed among processors.

The compilerthen analyze the processor topology and the distribution of data, decompose the array into partitions, andthen specify a mapping of arrays to processors.Because Kali is based on making the scientisttrained in FORTRAN feel at home with parallel processing (indeed, a noble goal), it has had to forego thepotential of more powerful data abstractions. Consequently, the only distributed data structure that Kalisupports is the distributed array.

While this maybe sucient for 90% of scientic codes, various distributed structures such as trees, sets, lists and soforth are not constructible in the language. Second,because Kali is a Fortran-like language and it doesnot support inheritance or other object oriented abstractions. Consequently, useful abstractions can notbe inherited and reused in the construction of parallelprograms.In spite of these limitations, we show that the basic2 Previous Models2.1 Concurrent AggregateDally and Chien[2][4] have proposed an objectoriented language, Concurrent Aggregate, that allowsprogrammers to build unserialized hierarchies of abstractions by using aggregates. CA serves a foundation for building distributed data structures in objectbased languages.

An aggregate in CA is a homogeneous collection of objects (called representatives)which are grouped together and may be referenced bya single aggregate name. Messages sent to the aggregate are directed to arbitrary representatives. Therepresentatives of an aggregate can communicate bysending messages to one another.Various distributed data structures such as trees,vectors and so forth can be built from aggregates.For example, a distributed tree can be built by givingeach representative \myparent", \left", and \right"instances.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5259
Авторов
на СтудИзбе
421
Средний доход
с одного платного файла
Обучение Подробнее