Портал аспирантов
 

Вернуться   Портал аспирантов > Обучение в аспирантуре > Обучение в аспирантуре

Ответ
 
Опции темы
Старый 17.12.2009, 11:42   #11
Riper
Advanced Member
 
Аватар для Riper
 
Регистрация: 29.10.2008
Адрес: Москва
Сообщений: 394
По умолчанию

george, честно говоря не уверен что правильно понял что Вы хотите сказать/сделать.

Давайте пока оставим в покое программизм (я, кстати, не поддерживаю идеи что сам полученный работающий код (ваша программа) должен быть центральным выводом из вашей работы) и попытаемся как-то математически определить что вы хотите сделать.

Итак что я понял:
1. Вы описываете некоторый язык, допускающий параллельное вычисление данных. Этот язык моделирует последовательное изменение значений массивов данных. Подозреваю что это получится контекстно-зависимый язык (в смысле что язык описывается контекстно-зависимой грамматикой). Результатом должно быть некое доказательство адекватности построенной модели (выведенного языка) реальным задачам и вычислениям.
2. Вы описываете допустимые правила вычислений для различных архитектур в виде других языков (как КЗ так и КС). Результатом опять же является доказательство правильности построенной модели.
3. Вы разрабатываете алгоритмы (и доказываете их) приведения языка из п.1 к любому языку из п.2 (или не любому, что означает то что ваш язык не исполним на данной архитектуре).

Я все правильно понял? (могу переписать те же пункты не в терминах формальных языков а в терминах детерминированных/не детерминированных автоматов если так вам удобнее)
Если да, то надо сосредоточиться на моделировании и доказательстве переходов (хотя опять же сомнения по новизне меня не отпускают), а не на программировании.
Riper вне форума   Ответить с цитированием
Реклама
Старый 21.12.2009, 09:57   #12
Noxter
Newbie
 
Регистрация: 21.12.2009
Сообщений: 5
По умолчанию

Я пока использую программу LeaderTask. Не скажу что это очень удобная программа, но лучшее из того что было перепробовано (не мало программ).
Есть идея написать собственное творение для этих и других огранизационных нужд.
Так если есть какие-то предложения\вопросы - ждем-с.

PS. Интересно а gcc разве не решает вашу задачу? Список поддерживаемых архитектур/платформ огромен. Я сам работаю с небольшими надбавками на x86, x64, x81, ARM7, ARM9.. Также как и Python
---------
chebotaev.blogspot.com
Noxter вне форума   Ответить с цитированием
Старый 21.12.2009, 10:42   #13
Carro
Gold Member
 
Регистрация: 23.01.2006
Сообщений: 1,089
По умолчанию

Цитата:
Сообщение от Noxter Посмотреть сообщение
Я пока использую программу LeaderTask. Не скажу что это очень удобная программа, но лучшее из того что было перепробовано (не мало программ).
Есть идея написать собственное творение для этих и других огранизационных нужд.
Так если есть какие-то предложения\вопросы - ждем-с.

PS. Интересно а gcc разве не решает вашу задачу? Список поддерживаемых архитектур/платформ огромен. Я сам работаю с небольшими надбавками на x86, x64, x81, ARM7, ARM9.. Также как и Python
гм, боюсь, вы не поняли.. ну вот как пример, вы в курсе, что на Интел и Спрак разный способ хранения данных типа float . Т.е. при передачи их из разных ОС систем, надо либо конвертировать расположение байтов , либо нет ... все это можно зашить, например, в некое middleware типа CORBA, а можно ручками самим .. и надо остлеживать на какой ОС и с какой ОС идут данные.
Carro вне форума   Ответить с цитированием
Старый 22.12.2009, 18:53   #14
george
Newbie
 
Регистрация: 03.08.2009
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Riper Посмотреть сообщение
1. Вы описываете некоторый язык, допускающий параллельное вычисление данных. Этот язык моделирует последовательное изменение значений массивов данных. Подозреваю что это получится контекстно-зависимый язык (в смысле что язык описывается контекстно-зависимой грамматикой). Результатом должно быть некое доказательство адекватности построенной модели (выведенного языка) реальным задачам и вычислениям.
Да, некоторый функциональный язык, являющийся вариацией лямбда-исчисления. Функции, работа со списками, зависимость по данным и отсутствие императивных конструкций.
Только не понял, почему он будет описываться КЗ-грамматикой?... Она же в языках программирования не применяется, насколько я знаю - из-за сложности ее разбора, а также из-за невысокой практической ценности.


Цитата:
Сообщение от Riper Посмотреть сообщение
2. Вы описываете допустимые правила вычислений для различных архитектур в виде других языков (как КЗ так и КС). Результатом опять же является доказательство правильности построенной модели.
Да, так. И не только под разные архитектуры. Для начала можно взять, например, многоядерные процессоры с разным числом ядер.

Цитата:
Сообщение от Riper Посмотреть сообщение
3. Вы разрабатываете алгоритмы (и доказываете их) приведения языка из п.1 к любому языку из п.2 (или не любому, что означает то что ваш язык не исполним на данной архитектуре).
Не совсем понял про "приведение". Мы разрабатываем алгоритмы исполнения языка из п.1. на разных архитектурах, используя описание правил вычислений на языке из п.2. Может быть, это можно назвать приведением.

Цитата:
Сообщение от Noxter Посмотреть сообщение
Я пока использую программу LeaderTask. Не скажу что это очень удобная программа, но лучшее из того что было перепробовано (не мало программ).
Спасибо, посмотрю.



Цитата:
Сообщение от Noxter Посмотреть сообщение
Есть идея написать собственное творение для этих и других огранизационных нужд.
Так если есть какие-то предложения\вопросы - ждем-с.
Тоже думал над этим. Но сначала надо изучить, что уже есть


Цитата:
Сообщение от Noxter Посмотреть сообщение
PS. Интересно а gcc разве не решает вашу задачу? Список поддерживаемых архитектур/платформ огромен. Я сам работаю с небольшими надбавками на x86, x64, x81, ARM7, ARM9.. Также как и Python
Не решает. Конечно, для последовательного алгоритма решает.
Но возьмите, например, многоядерную машину.
Чтобы запрограммировать для нее параллельный алгоритм, вы напишете на gcc код, создающий взаимодействующие между собой потоки. Но это будет ручное, императивное управление доступными аппаратными ресурсами на самом деле. Вы все равно говорите ОС, когда и как надо создавать потоки и выделять для них порции вычислений.
Задача переложить часть (в идеале всю) этой ручной работы на некоторое инструментальное средство. Отсюда и функциональный язык, чтобы обеспечить максимальную гибкость его трансляции.

Добавлено через 1 минуту 47 секунд
Цитата:
Сообщение от Carro Посмотреть сообщение
гм, боюсь, вы не поняли.. ну вот как пример, вы в курсе, что на Интел и Спрак разный способ хранения данных типа float . Т.е. при передачи их из разных ОС систем, надо либо конвертировать расположение байтов , либо нет ... все это можно зашить, например, в некое middleware типа CORBA, а можно ручками самим .. и надо остлеживать на какой ОС и с какой ОС идут данные.
Да, подобные проблемы тоже можно решить, но у нас упор на параллелизм.
А так да, хороший пример архитектурной зависимости/зависимости от аппаратных ресурсов.
george вне форума   Ответить с цитированием
Старый 22.12.2009, 19:07   #15
Riper
Advanced Member
 
Аватар для Riper
 
Регистрация: 29.10.2008
Адрес: Москва
Сообщений: 394
По умолчанию

Цитата:
Сообщение от george Посмотреть сообщение
Не совсем понял про "приведение". Мы разрабатываем алгоритмы исполнения языка из п.1. на разных архитектурах, используя описание правил вычислений на языке из п.2. Может быть, это можно назвать приведением.
А правила вычислений это разве не язык? Я так понимаю что язык.

В результате программа (предложение на язык1) исполняется на архитектуре (правила на язык2). Т.е. фактически вы строите отображение слов на язык1 в слова на язык2.
В духе: "слова вида АБВ на язык1 приводятся к словам вида ГДДДЕЕГ на язык2 и т.д."?
Riper вне форума   Ответить с цитированием
Старый 23.12.2009, 08:28   #16
george
Newbie
 
Регистрация: 03.08.2009
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Riper Посмотреть сообщение
А правила вычислений это разве не язык? Я так понимаю что язык.

В результате программа (предложение на язык1) исполняется на архитектуре (правила на язык2). Т.е. фактически вы строите отображение слов на язык1 в слова на язык2.
В духе: "слова вида АБВ на язык1 приводятся к словам вида ГДДДЕЕГ на язык2 и т.д."?
Согласен с вами.
Просто прочитал приведение по диагонали, поэтому задал этот вопрос
---------
My blog
gosheg.blogspot.com
george вне форума   Ответить с цитированием
Старый 23.12.2009, 12:42   #17
Riper
Advanced Member
 
Аватар для Riper
 
Регистрация: 29.10.2008
Адрес: Москва
Сообщений: 394
По умолчанию

Цитата:
Сообщение от george Посмотреть сообщение
Согласен с вами.
Просто прочитал приведение по диагонали, поэтому задал этот вопрос
Короче. Мне кажется (я хоть и к.т.н. по 05.13.11, но диссер мой совсем из другой области, формальными языками занимался давно, не знаю нынешних "модных" тенденций) что тебе сейчас не надо заморачиваться с програмизмом.
Сделай строго все математические выводы (1, 2, 1->2) в рамках теории формальных языков, сформулируй и докажи по ходу этих выводов несколько теорем (может даже более общих чем твой случай). И будет супер. Совет и оппоненты будет в восторге скорее всего. Если какие-нибудь красивые результаты математические получатся, то вообще может потом защитишься по 05.13.11 не как к.т.н., а как к.ф.-м.н. (что почетнее). Вот это и будет центральным моментом в твоем диссере.
А код потом дописать (при желании если научник будет его очень хотеть) не проблема.
Riper вне форума   Ответить с цитированием
Старый 24.12.2009, 12:30   #18
george
Newbie
 
Регистрация: 03.08.2009
Сообщений: 14
По умолчанию

Riper, спасибо за участие и советы! Буду думать

Цитата:
Сообщение от Noxter Посмотреть сообщение
Я пока использую программу LeaderTask. Не скажу что это очень удобная программа, но лучшее из того что было перепробовано (не мало программ).
Есть идея написать собственное творение для этих и других огранизационных нужд.
Так если есть какие-то предложения\вопросы - ждем-с.
Попробовал программку. Действительно, не айс. Outlook + OneNote даже поудобнее будет (м.б. потому что привык на работе?).
И задачу картотеки и каталогизации именно научной информации (про что изначально был вопрос, а не про контроль рабочего времени/выполненных задач), как я понял, она тоже не решает.
+ программа глючная, за 5 минут одну ошибку поймал. Не буду детализировать, т.к. тема не об этом.
---------
My blog
gosheg.blogspot.com
george вне форума   Ответить с цитированием
Старый 01.01.2010, 15:57   #19
Noxter
Newbie
 
Регистрация: 21.12.2009
Сообщений: 5
По умолчанию

Хм.. Собственно у меня она служит как раз только как картотека и каталогизации собственных мыслей, статей и выдержки из книг. Для другого она конечно не пригодна (основные ее возможности по управлению временем etc, я использую для фиксации времени от идеи до реализации, или от мысли к развернутой статье)

Текстовый скрин выглядит примерно так:
/Книги/Статьи/Диссертация/Работа/Спорт/etc/

И в каждой категории в виде "дерева" уложено по положкам:
+ Лит. обзор
- "Name1"
- "Name2"
И собственно в каждом пункте ссылка на материал, основные положения + цитаты.
Вполне достаточно для начала.

А вам что нужно? А то я собственную программу пишу, так попытаюсь даже MindMap реализовать
---------
chebotaev.blogspot.com
Noxter вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 23:14. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
© 2001—2025, «Аспирантура. Портал аспирантов»
Рейтинг@Mail.ru