Rambler's Top100
"Knowledge itself is power"
F.Bacon
Поиск | Карта сайта | Помощь | О проекте | ТТХ  
 Базарная площадь
  
О разделе

Основная страница

Группы обсуждений


Тематический каталог обсуждений

Архив

 
 К н и г и
 
Книжная полка
 
 
Библиотека
 
  
  
 


Поиск
 
Поиск по КС
Поиск в статьях
Яndex© + Google©
Поиск книг

 
  
Тематический каталог
Все манускрипты

 
  
Карта VCL
ОШИБКИ
Сообщения системы

 
Форумы
 
Круглый стол
Новые вопросы

 
  
Базарная площадь
Городская площадь

 
   
С Л С

 
Летопись
 
Королевские Хроники
Рыцарский Зал
Глас народа!

 
  
ТТХ
Конкурсы
Королевская клюква

 
Разделы
 
Hello, World!
Лицей

Квинтана

 
  
Сокровищница
Подземелье Магов
Подводные камни
Свитки

 
  
Школа ОБЕРОНА

 
  
Арсенальная башня
Фолианты
Полигон

 
  
Книга Песка
Дальние земли

 
  
АРХИВЫ

 
 

Сейчас на сайте присутствуют:
 
  
 
Во Флориде и в Королевстве сейчас  05:31[Войти] | [Зарегистрироваться]
Обсуждение темы:
Оберон-технология: особенности и перспективы


Тематика обсуждения: Оберон-технология. Особенности, перспективы, практическое применение. 

Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру


Всего в теме 6256 сообщений

Добавить свое сообщение

Отслеживать это обсуждение

Обсуждение из раздела
Школа ОБЕРОНА

<<<... | 5056—5047 | 5046—5037 | 5036—5027 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 122


№ 5046   16-07-2007 11:17 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5043« (info21)
___________________________

Речь о простой как репа вещи:

если в лиспе я вынужден моделировать, скажем, моном как список, прицепленный к чему-то, то, работая в Обероне, могу вместо ссылки на список вместе со всем списком просто определить поле-массивчик. Тогда вся эта подструктурка данных хранится в contiguous memory block, и вся работа с ней локализована. (При том, что и экономия памяти немалая.) В зависимости от задачи, конечно.


1. См. »сообщение 5045«.

2. Если Ваши представления об оптимизации работы кэша ограничены лишь использованием непрерывных кусков памяти, то это исключительно Ваши проблемы.

Подкреплять тестами я ничего не буду -- меня мой опыт и так устраивает.


... Зелен виноград. :-)


№ 5045   16-07-2007 08:06 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5043« (info21)
___________________________

если в лиспе я вынужден моделировать, скажем, моном как список, прицепленный к чему-то, то, работая в Обероне, могу вместо ссылки на список вместе со всем списком просто определить поле-массивчик. Тогда вся эта подструктурка данных хранится в contiguous memory block, и вся работа с ней локализована. (При том, что и экономия памяти немалая.) В зависимости от задачи, конечно.

Ну вообще-то в Лиспе тоже есть структуры. Вообще, по исследованиям самих же лисперов, в программах на Лиспе в основном используются не списки, а другие типы данных... Массивы, структуры, объекты...


№ 5044   16-07-2007 02:34 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5041« (Lisp Hobbyist)
___________________________

... Так что качество реализации машинной арифметики с плавающей точкой рановато списывать со счетов.

К чему бы это...


№ 5043   16-07-2007 02:29 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5040« (Lisp Hobbyist)
___________________________

Эк как лисперы с полунамека... 8))

Речь о простой как репа вещи:

если в лиспе я вынужден моделировать, скажем, моном как список, прицепленный к чему-то, то, работая в Обероне, могу вместо ссылки на список вместе со всем списком просто определить поле-массивчик. Тогда вся эта подструктурка данных хранится в contiguous memory block, и вся работа с ней локализована. (При том, что и экономия памяти немалая.) В зависимости от задачи, конечно.

Типа. Подобные вещи не сложны, их много где можно использовать, и в интеграле дают большой, даже огромный эффект, для понимания которого никаких тестов не надо -- один или два порядка -- какая разница, главное, что много.

Подкреплять тестами я ничего не буду -- меня мой опыт и так устраивает.


№ 5042   15-07-2007 23:55 Ответить на это сообщение Ответить на это сообщение с цитированием
На странице исследовательской группы проф. Гуткнехта (Programming Languages and Runtime Systems Group) выложена реализация языка Composita с исходными текстами (включая исходники ран-тайма), а также с набором тестов производительности и парой примеров приложений. См. http://www.jg.inf.ethz.ch/wiki/ComponentLanguage/Front

Component System (160kb, 29 June 2007).

The Component language is implemented by two systems:

- First, there is the development system, on which new component programs can be edited and compiled. This is a usual Oberon installation with the component compiler provided in the package above.

- Second, there is a runtime system, on which the the compiled programs can be executed. It is a small operating system which has been specifically designed to support the concepts of the new language very efficiently. As target platform, the runtime system runs on any PC-compatible Intel x86 single or multi-processor machine (with normal ATA disk support).

To use the compiler and runtime system, extract the package above under an Oberon installation (AOS) and follow the instructions in 'ComponentSystem.Tool' file. The source code of the runtime system is here available.

Applications

The following applications have been currently developed in Composita:

- Traffic Simulation Package (144kb, 29 June 2007).

- Typical Concurrent Programs (8kb, 29 June 2007)

The packages also contain analogous implementations in other programming languages to compare the runtime performance.



№ 5041   15-07-2007 17:04 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5037« (Борис Рюмшин)
___________________________


Есть численные методы (классика порочная), аналитические методы (символьные, компьютерная алгебра), числено-аналитические методы, а также интервальные численные методы.

В чистом виде вещественные числа применяются только в первом случае (ну почти :)). Причём, полагаю, эта классификация уже сейчас неполна.


Известные мне реализации интервальной арифметики большей частью основаны на все тех же машинных вещественных числах, что и "порочная классика" (в остатке имеем реализацию вещей наподобие dotprecision в Pascal XSC, но это не связанно напрямую с интервальностью). Отличие лишь в алгоритмах вычислений (например, использование направленных округлений). Соответственно, если реализовать интервалы поверх вещественного формата одинарной точности, минимальный достижимый диаметр интервала будет хуже, чем для двойной. Так что качество реализации машинной арифметики с плавающей точкой рановато списывать со счетов.


№ 5040   15-07-2007 17:04 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5035« (info21)
___________________________

Скорее всего, это сильно зависит от тестовой задачи. Если она дает слишком много кэш-промахов, быстродействие при отключении кэша действительно падать не должно.

Слова знатока лиспа :))


Я в своих размышлениях о тенденциях железа слово Lisp использовал только в подписи. Но если у завсегдатаев ветки наблюдается такая выраженная потребность поговорить об этом языке, то не могу не пойти им навстречу...

1. Лисперы, причем не только знатоки, но и даже многие любители, осведомлены о влиянии различных алгоритмов "сборки мусора" (incremental GC, ephemeral aka generational GC) на локальность обращений к памяти. Более того, они даже в курсе, кто, когда и для какого языка эти алгоритмы первоначально разрабатывал. (Соотв. статьи H. Baker'а и D. (?) Moon'а желающие могут поискать самостоятельно.) Впрочем, лисперы также не отрицают возможности применения этих алгоритмов (со всеми их плюсами и минусами) в реализации других языков.

2. Прагматичные лисперы (коих большинство, например, если я не напутал, R. Fateman, автор статьи "Fast floating point processing in Lisp") не испытывают особых комплексов из-за того, что критичные к быстродействию части системы будут реализованы на иных, более близких к железу, языках и подключены через FFI. Более того, они не преминут воспользоваться изрядным опытом автоматической генерации программ, накопленным в Лиспе, чтобы не писать этот код вручную.

3. Есть мнение (и не только лисперов), что по-настоящему оптимизированный с учетом работы кэш-памяти и прочих особенностей архитектуры код получается лишь с выходом на уровень машинных команд (насколько мне известно, языки высокого уровня не обеспечивают явного управления предвыборкой данных и их "фиксацией" в кэш-памяти). С учетом этого обстоятельства, подход п. 2 получает немало дополнительных очков в свою пользу.

А вот мы в Обероне умеем локализовывать данные, так что и со списками кэш L2 работает. Иногда.

Как насчет публично доступных воспроизводимых тестов, показывающих данное достижение, причем подкрепленных показаниями кэш-профайлера?


№ 5039   14-07-2007 10:56 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5036« (Geniepro)
___________________________

А каккие же типы вещественных данных используются в "новой" науке? Single?

Речь не шла о новой науке. Наука старая.

Отход не означает новых вещественных данных, а увеличение доли невещественных -- за счет динамических структур данных, коих тем боле, чем умнее алгоритмы.


№ 5038   14-07-2007 06:35 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5034« (Lisp Hobbyist)
___________________________

Скорее всего, это сильно зависит от тестовой задачи. Если она дает слишком много кэш-промахов, быстродействие при отключении кэша действительно падать не должно.

Ну может мы доживём до тех славных времён, когда вся память будет работать на одной скорости с процессорами. :):):)


№ 5037   14-07-2007 06:34 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 5036« (Geniepro)
___________________________

Ответ на »сообщение 5035« (info21)
___________________________

Лучше говорить про "старонаучные" расчеты. В новонаучных от этого отход имеет место. Так что...

А каккие же типы вещественных данных используются в "новой" науке? Single?


Есть численные методы (классика порочная), аналитические методы (символьные, компьютерная алгебра), числено-аналитические методы, а также интервальные численные методы.

В чистом виде вещественные числа применяются только в первом случае (ну почти :)). Причём, полагаю, эта классификация уже сейчас неполна.


<<<... | 5056—5047 | 5046—5037 | 5036—5027 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 122


Добавить свое сообщение

Отслеживать это обсуждение

Дополнительная навигация:
Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру
  
Время на сайте: GMT минус 5 часов

Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Функция может не работать в некоторых версиях броузеров.

Web hosting for this web site provided by DotNetPark (ASP.NET, SharePoint, MS SQL hosting)  
Software for IIS, Hyper-V, MS SQL. Tools for Windows server administrators. Server migration utilities  

 
© При использовании любых материалов «Королевства Delphi» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются собственностью их производителей.

Яндекс цитирования