Chapel

Софтуер снимки:
Chapel
Софтуер детайли:
Версия: 1.3.0 Pre-Alpha
Дата на качване: 11 May 15
Розробник: Cray Inc.
Разрешително: Безплатно
Популярност: 12

Rating: nan/5 (Total Votes: 0)

Chapel е нов език паралелно програмиране се разработва от Cray Inc., като част от DARPA водената от програмата висока производителност компютърни системи (HPCs). Chapel е предназначена да подобри производителността на висок клас компютърни потребители, като същевременно служи като преносим модел паралелно програмиране, който може да се използва на стоковите клъстери или настолен многоядрени системи. Параклис се стреми да подобри значително за програмиране на широкомащабни паралелни компютри, докато съвпадение или побой на производителността и преносимостта на текущите модели за програмиране като MPI.
Приложението за Chapel подкрепя модел многонишкова изпълнение чрез високо равнище абстракции за паралелизъм данни, задача паралелизъм, едновременност и вложените паралелизъм & Nbsp;. Тип локал Chapel позволява на потребителите да определят и причина за поставянето на данни и задачи на целева архитектура за да се настройвам за местността. Chapel подкрепя агрегати глобалното виждане за данни с дефинирани от потребителя приложения, позволяващи операции на разпределени структури от данни, за да бъде изразена по естествен начин. За разлика от много предишни паралелни езици по-високо ниво, Chapel е проектиран около multiresolution философия, позволяващ на потребителите да пишат първоначално много абстрактно код и след това постепенно се добавят повече подробности, докато те са най-близо до машината за свои нужди изискват. Chapel подкрепя код повторна употреба и бързо създаване на прототипи чрез обектно-ориентиран дизайн, тип извод, и функции за родово програмиране.
Chapel е проектиран от първите принципи, а не чрез разширяване на съществуваща език. Това е наложително, блок-структуриран език, проектиран да бъде лесен за научаване за потребители на C, C ++, Fortran, Java, Perl, Matlab, и други популярни езици. Докато Chapel се основава на концепциите и синтаксис от много предишни езици, неговите паралелни функции са най-пряко повлияни от ZPL висока производителност Fortran (HPF), и Cray MTA и търговията; / Cray XMT & търговия; разширения на C и Fortran

Какво ново в тази версия:.

  • Акценти (виж по-долу за повече подробности)
  • сплит "Деф" ключовата дума в "Proc" (за процедури) и "ITER" (за итератори)
  • (виж "$ CHPL_HOME / Util / конвертирате-DEFS --help 'за помощ за актуализиране на съществуващите кодове)
  • добавя "повторен" разпределение и подобрен "Block-цикличен" разпределение
  • (виж & quot; Стандарт & quot Distributions; в спец и примери / грундове / distributions.chpl)
  • добавена еднократна локала слоеве задача за Nanos ++ (BSC) и Qthreads (Sandia)
  • (виж док / README.tasks)
  • основна преработка на обсег на семантиката и изпълнение
  • (виж & quot; семантични Промени / Промени в Chapel Language & quot; по-долу за повече подробности)
  • първоначална подкрепа за летливи вида: булев, INT, uint, реално, на изображения
  • (виж док / технически бележки / README.volatile)
  • подкрепа за Външните consts и класове (указатели към structs)
  • (виж док / технически бележки / README.extern)
  • подобрена поддръжка за паралелизъм данни на Cray XMT
  • обширни подобрения на кодовете на пробата в примери / директория
  • (виж примера код "по-долу, и примери / README)
  • добавена повечето примери кода от спец в нов примери / директория
  • (виж примери / спец / *)
  • добавена техническата бележка, описваща домейн карта интерфейс потребителски дефинирана
  • (виж док / технически бележки / README.dsi)
  • обширни известия спецификацията на език
  • (виж "Документация" по-долу)
  • няколко подобрения на изпълнение за възлагане на задачи и комуникационни слоеве
  • (виж & quot; Runtime Library Промени & quot; по-долу)
  • синтактичен / именуване промените
  • сплит "Деф" ключовата дума в "Proc" (за процедури) и "ITER" (за итератори)
  • (виж "$ CHPL_HOME / Util / конвертирате-DEFS --help 'за помощ за актуализиране на съществуващите кодове)
  • преименува на "аритметика" домейни / масиви на "правоъгълни" домейни / масиви
  • добавена поддръжка за плаваща запетая литерали на формата "1.д ..."
  • (по-рано, само "1е ..." и "1.0e ..." бяха подкрепени)
  • семантични Промени / Промени в Chapel Language
  • няколко подобрения в обхват (виж "печки" глава на езика SPEC):
  • добавена концепция за привеждане в съответствие, за да се посочи едно подреждане по модул | крачката |
  • добавя "подравняване" оператор и въпрос на диапазони да уточни / заявка подравняване
  • (например, "1..10 с 3 подравняване на 2 '= & GT;" 2, 5, 8, "тъй 2 == 5 == 8, мод 3)
  • дефинирани == на диапазони от гледна точка на целочислени последователности те генерират
  • дефинирани IDENT (R1, R2) да се каже дали R1 и R2 са семантично идентични
  • дефинирани "# к" за к & LT; 0 в смисъл & quot; брои от края на обхвата & quot;
  • добавя "първо", "последната", "alignedLow," методи alignedHigh "на диапазони
  • (например, "1..10 от -2" = & GT; първото == 10, миналата == 2, alignedLow = 2, alignedHigh = 10)
  • добавена поддръжка за различни нови функции за заявки диапазон
  • (например, alignLow (), hasFirst (), hasLowBound (), isAligned (), boundsCheck () ...)
  • добавена поддръжка за летливи булев, INT, uint, реално, и вида на изображения
  • (виж док / технически бележки / README.volatile)
  • добавена проверка за край на файл за типа на файла
  • (напр., "Докато! Infile.eof ...")
  • отстранява подкрепа за лечение на "връщане" в итератор като "добив"
  • (например, промяна "ITER Foo () {връщане х;}" на "ITER Foo () {добив х; връщане;}")
  • добавена поддръжка за съотнасяне модули, без първо да "use'-ING тях
  • (например, модул M1 {Var х ...} модул M2 {... M1.x ...} сега е юридическо)
  • добавена заявка callStackSize типа на локал
  • (например, "here.callStackSize" връща размера на стака обаждане на текущия локал)
  • отстранили преди това изисква запетаята от края на декларации ENUM
  • (например, "ENUM цветове {червено, синьо, зелено}" вече е юридически; преди това са необходими ";")
  • добавена поддръжка за един изоставаше със запетая в края на ENUM списъци
  • (например, "ENUM цветове {червено, синьо, зелено,}" вече е юридическо)
  • отстранява подкрепа за +/- оператори на правоъгълни домейни; ползване преведат ()
  • Нова Реализирани Особености
  • реализира == /! = За правоъгълни, асоциативно и оскъдни домейни
  • Стандартни Distributions
  • добавена първи проект на "повторен" разпределение за съхранение на данни с излишък
  • (виж примери / грундове / distributions.chpl)
  • подобрена "Block-цикличен", достатъчна, за да се приложи правилно HPCC PTRANS и HPL
  • (виж примери / HPCC / ptrans.chpl, hpl.chpl; примери / грундове / distributions.chpl)
  • отстранява съкращения в спецификацията на лидера итератори между домейни / масиви
  • стандартни модули
  • добавена INFINITY и Нан константи към модула Math.chpl
  • (виж "Math" под & quot; Стандарт & quot Modules; в езика спец)
  • добавена isinf () и isfinite () на тестови програми с модула Math.chpl
  • (виж "Math" под & quot; Стандарт & quot Modules; в езика спец)
  • добавя половин дузина повече съчетания с модула GMP.chpl
  • Documentation
  • добавена нова техническа бележка, описваща домейн карта интерфейс потребителски дефинирана
  • (виж док / технически бележки / README.dsi)
  • направи много подобрения на спецификацията на език
  • основни ревизии до областите глава за подобряване яснотата / точност
  • подобрена и единна структура на рекордите и класове глави
  • основни ревизии на главата на домейни Maps за подобряване яснотата / точност
  • име примерни кодове, за да предоставят кръстосано позоваване на примери / спец / програми
  • изясни законосъобразността на етикета / пауза / продължите в паралелни линии
  • Актуализация на описанията на Прочети [LN] / запис [LN]
  • фиксирана някои проблеми в файлови полета поръчване
  • преформатиран в спецификацията като "книга" в LaTeX
  • различни дребни поправки на печатни грешки / грешки
  • подобрени определения / описания на няколко условия
  • добавена документиране на locale.name
  • и много други промени ...
  • актуализиран бърза справка документ да се включи def- & GT; Proc / ITER климата, приведе оп
  • .
  • пренаписаха / реорганизирана README.extern да изясни обяснения и отглеждане на актуална
  • прибавя README, описващ "местни" отчета (док / технически бележки / README.local)
  • прибавя README описващ летливи видове (док / технически бележки / README.volatile)
  • редактирани README.comm диагностика говорим бързи рогове статистика
  • редактирани различни README файлове
  • Примерни кодове
  • поставя повечето примери кода от език спец. в нов спец / поддиректория
  • подобрила грундове / директория:
  • добавя нов грунд за използване на процедури (грундове / procedures.chpl)
  • добавена основен грунд за домейни (грундове / domains.chpl)
  • преименуван локали грунд да locales.chpl и да го подобри
  • подобрена грунда на разпределения и добави Блок-цикличен и Повтарящи се употреби
  • актуализиран грунда диапазон (грундове / range.chpl)
  • подобрена грунда на итератори (грундове / iterators.chpl)
  • подобрена грунда на намаленията (грундове / reductions.chpl)
  • добавено getCurrentTime (), за да грунда на таймери (грундове / timers.chpl)
  • добави описания на типа псевдоними и видове довереник да променливи грунд
  • (виж грундове / variables.chpl)
  • подобрена HPCC / показатели директория
  • добавя първата версия на HPCC PTRANS да HPCC / директория (ptrans.chpl)
  • добавя по-чиста версия на HPCC HPL да HPCC / директория (hpl.chpl)
  • добавена варианти / поддиректория на примери / HPCC да проявява други подходи
  • добавена поток-promoted.chpl да покаже използването на промоция в световната STREAM Triad
  • добавена RA-cleanloop.chpl да покаже по-чисти (но в момента по-бавно) RA ядрото
  • подобрени примери от първо ниво:
  • преименува съществуващата & quot; Hello, World & quot; примери, които да предполагат, логически ред четене
  • (виж примери / здравей * .chpl)
  • добавена данни паралелни и разпределени данни успоредни Hello, World примери
  • (виж примери / hello3-datapar.chpl, примери / hello4-datapar-dist.chpl)
  • добави коментари към различни Hello, World примери (примери / здравей * .chpl)
  • актуализира всички примери за текущия език семантика
  • използвате "Proc" / "ITER", а не "Деф"
  • актуализация, за да отрази новите семантика обсег
  • платформено-специфична Notes
  • за Cray XT / Cray XE, подобрени aprun и PBS-aprun пускови
  • (виж & quot; Launcher-специфични бележки & quot; по-долу)
  • за Cray XMT, добавя поддръжка за паралелни линии над диапазони
  • за Cray XMT, добави поколение noalias pragmas да forall контур променливи
  • добавена поддръжка за MareNostrum BSC, включително документи и специален стартер
  • (виж док / платформи / README.marenostrum)
  • Стартиране на специфични бележки
  • добавена Launcher-специфични опции за --help способност
  • подобрено разпространение на кодове за състояние излизането през установки
  • променило установки за подкрепа EXEC-базирани (а не базиран на системата) команди
  • направена установки употреба "Прекратяване на връзката", а не система ("RM"), за да премахнете временни файлове
  • добавена стартер за MareNostrum BSC е
  • намален брой временни файлове, използвани за заснемане на продукцията на "система" команди
  • aprun подобрения Launcher:
  • прибавя --cc флаг да се уточни CPU задача w / в един възел
  • прибавя -q флаг да тече стартера в тих режим
  • добавена дебъгване способност чрез CHPL_LAUNCHER_DEBUG да запази ТМР файлове около
  • PBS-aprun подобрения Launcher:
  • прибавя --cc флаг да се уточни CPU задача w / в един възел
  • добавена дебъгване способност чрез CHPL_LAUNCHER_DEBUG да запази ТМР файлове около
  • почистят изход да се отървете от някои чужди печат
  • направена подкрепа за стартиране на нашата система за изпитване
  • --walltime и --queue знамена добавен в Launcher като алтернативи на ENV. Vars.
  • Compiler промените
  • направи компилатор печат "вярно" / "невярно" в подписи тип, а не 1/0
  • добавен конфигурационния параметър "noRefCount", за да забраните позоваване броене (може да изтече памет)
  • Compiler Flags
  • добавя флаг --print-callstack-на-грешка да покаже какво е довело до лош разговор
  • прибавя --no-Codegen флаг, за да пропуснете код поколение и свързване фаза
  • Промени оперативна съвместимост
  • добавена поддръжка за ученик C & quot; класове & quot; (Показалеца до структура на вида)
  • добавена поддръжка за Външните consts (виж README.extern)
  • съобщение за грешка Подобрения
  • добави предупреждение сираци "използването" изявления извън декларираните модули
  • (например, "използва M1; модул M2 {}" следва обикновено да бъде "модул M2 {ползване M1;}")
  • направено съобщение синтактична грешка време да използва стандартния "името на файла: lineno:" формат
  • генерира съобщение за грешка за сезиране на име на клас в първичен метод
  • (например, "клас C {Def Cm () {...}}" сега генерира съобщение за грешка)
  • Корекции на грешки / нова семантични проверки (за стари семантика)
  • възпрепятстван видове довереник да бъде определен с помощта на времето за изпълнение на командния ред знамена
  • фиксирана способността на компилатора да се справи съюзи, без полета
  • фиксирано намаление на minloc / maxloc да се справят с празни обхвати / субдиапазоните на стойности
  • Фиксирана бъг в която се обръща внимание на "пътя" аргумент за файлови конструктори
  • направена празни съюзи работят правилно
  • Фиксирана проблем, препълване на откъртване на диапазони за дистрибуция / паралелизация
  • Фиксирана бъг, включващи подкрепа за празни Външните типове записи
  • Фиксирана бъг с участието на Външните функции, които връщат записи
  • Фиксирана бъг, свързани с копиране на външните записи
  • фиксирана изпълнение на +/- оператори на асоциативен / оскъдни домейни
  • Фиксирана бъг, свързан с имената на модула името на файла, базирани съдържащи множествена "е.
  • съобщения добавя грешки за разширяване / екстериор / интериор на нередовни домейни
  • добавена грешка за конструктори / деструктори с определен тип замяна
  • фиксирано чифт бъгове, свързани с "бързо на" оптимизация
  • добавена проверка срещу изграждането на класове, без да уточнява генерични полета
  • Промени опаковката
  • добавена синтаксис маркер код за GNU източник-маркирайте
  • (виж и т.н. / източник-връхната / README)
  • подобрени Emacs оцветяване подкрепа за версия 22.x
  • (виж и т.н. / Emacs / README)
  • известия Vim синтактично оцветяване за да отразяват новите "Proc" / "ITER" ключови думи
  • (виж и т.н. / Vim / README)
  • добавя скрипт за конвертиране на "използване на" Деф съществуващите кодове "на" ITER "/" Proc "
  • (виж $ CHPL_HOME / Util / конвертирате-DEFS)
  • отстранени multirealm примери и документация, за момента
  • софтуер на трета страна промените
  • актуализиран GASNet до версия 1.16.1
  • добавена копия от Nanos BSC е ++ и Qthreads Sandia на
  • (виж трета страна / README)
  • направи след инсталиране стъпка за GASNet която променя абсолютни пътища за относителна
  • отстранява PVM за момента, поради нестабилност
  • Runtime Library промените
  • добавена еднократна локала слоеве задача за Nanos ++ (BSC) и Qthreads (Sandia)
  • няколко подобрения по време на работа задачи слой:
  • добавен нов интерфейс за това, че chpl_main на задачи слой повикване ()
  • променило многозадачна първоначален функция, за да вземе maxThreadsPerLocale / callStackSize опцията
  • добавена възможност за добив задача с интерфейса за многозадачна слой
  • подобрена код по време на работа, за да се избегне използването на синхронизация Vars преди инициализиране многозадачна
  • отстранява макро-рана форма на многозадачна работа интерфейс; вместо използване на стандартни имена
  • обединена наименоване на всички слоеве задача съчетания да chpl_sync _ * () и chpl_task _ * ()
  • отстранява изискване за прилагане на една променлива интерфейс
  • премества прекратяване на теми от FIFO задачи слой да pthreads резби
  • опростено прилагане на синхронизиране променливи в pthread резби слой
  • премества отговорност за броя на конци от FIFO задачи да pthread резби
  • няколко подобрения на Runtime комуникация слой:
  • преструктурирани комуникационният интерфейс за подкрепа на аргументите дължина / тип
  • добавен интерфейс за без блокиране получите операции на COMM. интерфейс
  • обединени всички отдалечени получите операции да използват CHPL_COMM_GET () макро
  • refactored / преименуват заглавията на комуникационен интерфейс
  • тестване на системата
  • значително подобрена тестване на производителност и графични възможности
  • (виж коментари в предната част на start_test за документация)
  • подобрена поддръжка на тестване на системата за почистване след себе си
  • добавя способността да се избегне използването на всеки околен на стандартния вход
  • добавена възможност за осигуряване на възможност prediff на цялата система
  • добавя способността да използват родния таймаут функция стартер, а не Пайтън
  • подобрена как системата за тестване убива тест, който пъти от
  • Фиксирана бъг в която .preexec файлове работили само ако "." е по пътя си
  • Вътрешен
  • прибавя --break-по-ID компилатор флага на разработчиците да локализират AST възел създава
  • подобрена организация на съдържанието Util / директория
  • променила начина, по номер на версия се изчисляват / показва за SVN-базирани потребителите
  • добавена поддръжка за меню за задачи / конци-конкретен модул код
  • добавя възможност за отпечатване на графовете на AST, разпределени между преминаванията
  • добавя нов GDB псевдоним да компилатор --gdb: "Локомотиви" отпечатва населено място
  • един AST възлова точка
  • подобрила значително изпълнението на pragmas / флагове, за да се избегнат случаи на грешки
  • отстранени няколко случая на ненужни Сравнява низ в компилатора
  • отстранена грешка-склонни използване на CHPL_TASKS и CHPL_THREADS като предпроцесорни символа
  • добавена bestPractices документация за разработчици (не са включени в пресата)
  • променила вътрешния munging на "=" и "==" на "ASSIGN" и "е равно на" съответно
  • добавена разработчик флаг --print-ID-на-грешка да отпечатате AST ID на грешки
  • подобрила строгост на C ++ прототип проверка
  • добавена външните споразумения сътрудник на дървото SVN (не в пресата)
  • добавена идея на вътрешните видове, използвани от компилатора, но не и за употреба

Подобен софтуер

bff
bff

3 Jun 15

Mozart
Mozart

3 Jun 15

GNU Octave
GNU Octave

22 Jun 18

Коментари към Chapel

Коментари не е намерена
добавите коментар
Включете на изображения!
Търсене по категория