The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Открыт код системы распределённой памяти Galaxy, opennews (?), 12-Июл-12, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


29. "Открыт код системы распределённой памяти Galaxy"  +/
Сообщение от ДяДя (?), 12-Июл-12, 13:10 
Не всё так в Java однозначно(в остальных платформах/языках, увы, тоже).

Вот, например, целочисленное суммирование элементов массива в цикле, типа:

__int32 sum = 0;
for (int i = 0, n = vec.size(); i < n; i++)
sum += vec[i];

Чтобы на GCC результаты приблизились к Java нужно пошаманить. g++ -O3 -funroll-loops помогает. При этом Java будет компилить код, который оптимален для данного процессора, а GCC   неплохо оптимизирует для -march. Только с данным ключом на другом процессоре будет тормозить или вообще работать не будет.

Память в Java жрут коллекции. Если это неприемлемо, то используют массивы. Может это кому-то покажется не совсем в стиле Java и не очень удобным, но по сравнению с C/C++ вполне приемлемо.

В итоге, (при грамотном подходе, разумеется) производительность систем, где активно используются данные из памяти, ВСЕГДА упирается в пропускную способность памяти, а не в язык разработки. Оптимизировать можно, только с помощью уменьшения объёма данных, для более эффективного использования кэша.


P.S.
За конкретный пример спасибо Роману Елизарову http://elizarov.livejournal.com/ ;-)
Кстати это человек, который РЕАЛЬНО делает высоконагруженные производительные системы.

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

63. "Открыт код системы распределённой памяти Galaxy"  +/
Сообщение от Аноним (-), 12-Июл-12, 15:49 
> P.S.
> За конкретный пример спасибо Роману Елизарову http://elizarov.livejournal.com/ ;-)
> Кстати это человек, который РЕАЛЬНО делает высоконагруженные производительные системы.

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

Ответить | Правка | Наверх | Cообщить модератору

81. "Открыт код системы распределённой памяти Galaxy"  +/
Сообщение от ДяДя (?), 12-Июл-12, 22:11 
>... и за многие годы работы с ними, как любой разработчик на его месте, видел миллионы случаев, когда жаба сливает сям.

Если бы он видел миллионы случаев слива, то не работал бы с Java.

Посмотрите клиентов для интереса: http://www.devexperts.com/ru/clients.html
ММВБ, РТС о чём-нибудь говорят? Плюс ведущие брокеры. Это всё реальный хардкор для приложений. Миллионы транзакций.

Кстати он говорит, что C должен знать любой программист.

> Но он также случайно обнаружил редкую, уникальную ситуацию, когда жаба почти не сливает, и не замедлил привести ее в качестве практического примера =)

Это просто самый прямолобый пример, который не завязан на всякие специфичные вещи и его можно адекватно воспроизвести во многих языках/платформах.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру