The OpenNET Project / Index page

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



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

Оглавление

Релиз языка программирования Go 1.9, opennews (ok), 26-Авг-17, (0) [смотреть все]

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


25. "Релиз языка программирования Go 1.9"  –4 +/
Сообщение от лютый жабист__ (?), 26-Авг-17, 14:52 
Если программа уровня хелловёлд, то гц не отработает даже. Если прога большая то гц это не минус, а плюс.
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

64. "Релиз языка программирования Go 1.9"  –1 +/
Сообщение от pripolzemail (?), 27-Авг-17, 08:44 
знаю 2 случая косяков, связанных со сборкой.
1 на джаве: в библиотеке jetty СМ просто не справлялся на больших нагрузках и со временем уводил программу в OOM.

2 на C#: сборщик освобождал то, что не должен был. Прогеры долго танцевали с бубном, пытаясь как-то это обойти. Обратились в техподдержку, и те сказали "да, мы знаем, что такой баг есть. КОГДА-НИБУДЬ починим"

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

84. "Релиз языка программирования Go 1.9"  +2 +/
Сообщение от Аноним (-), 27-Авг-17, 19:54 
А при чём тут Go?
Ответить | Правка | Наверх | Cообщить модератору

89. "Релиз языка программирования Go 1.9"  –4 +/
Сообщение от лютый жабист__ (?), 28-Авг-17, 06:33 
> 1 на джаве: в библиотеке jetty СМ просто не справлялся на больших нагрузках и со временем уводил программу в OOM.

У жабовых GC максимальная скорость мусора сборки гигабайты в секунду. Если чё-то там где-то не успевало, вывод - прога генерила десятки гигабайт мусора в сек. Шо как бэ намекает на то, из чего сделан прогер 8)))

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

91. "Релиз языка программирования Go 1.9"  +4 +/
Сообщение от Аноним (-), 28-Авг-17, 11:04 
> У жабовых GC максимальная скорость мусора сборки гигабайты в секунду.

И он работает не переставая, или всё-таки даёт выполниться какому-то другому коду?

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

94. "Релиз языка программирования Go 1.9"  –3 +/
Сообщение от лютый жабист__ (?), 28-Авг-17, 11:22 
>> У жабовых GC максимальная скорость мусора сборки гигабайты в секунду.
> И он работает не переставая, или всё-таки даёт выполниться какому-то другому коду?

Не знаю как в GO, а вот жаба получается быстрее си в плане управления памятью. 8)

Т.к. сишники в основном потоке делают new и delete, reallocate итд для дефрагментации памяти, а жабка этим занимается в отдельных потоках, большая часть фаз сборки выполняется ПАРАЛЛЕЛЬНО с основной прогой. В отличие от могучего си...

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

98. "Релиз языка программирования Go 1.9"  +/
Сообщение от Аноним (-), 28-Авг-17, 13:40 
Вопрос был не об этом. Эта фантастическая скорость в "гигабайты в секунду" — это когда gc запущен, так? А как часто он запускается, и какова средняя скорость сборки? Только её есть смысл сравнивать со скоростью замусоривания.
Ответить | Правка | Наверх | Cообщить модератору

112. "Релиз языка программирования Go 1.9"  –1 +/
Сообщение от лютый жабист__ (?), 29-Авг-17, 05:22 
> Вопрос был не об этом. Эта фантастическая скорость в "гигабайты в секунду"
> — это когда gc запущен, так? А как часто он запускается, и какова средняя скорость сборки?

Если на самом деле интересно... С достаточно толстой задачи - распарсить 750ГБ XMLек и вытащить из них полезную инфу. GC срабатывает в среднем раз в 3 сек на 0.01-0.04 сек. Освобождает, как видишь 2ГБ за 0.02сек. Так что, получается что сборщик в среднем в секунду чистит 666МБ, тормозя прогу на 0.0066(6)сек.

[GC (Allocation Failure) [PSYoungGen: 2060768K->19907K(2088960K)] 7512698K->5471837K(7875584K), 0.0192799 secs] [Times: user=0.18 sys=0.01, real=0.02 secs]

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

103. "Релиз языка программирования Go 1.9"  +2 +/
Сообщение от Аноним84701 (ok), 28-Авг-17, 16:16 
> Т.к. сишники в основном потоке делают new и delete,  reallocate итд для дефрагментации памяти
>  сишники  ... new и delete, reallocate  ... дефрагментации памяти

Я правильно понимаю, что и все остальные рассуждения и "аргументы" такого же "качества"?

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

111. "Релиз языка программирования Go 1.9"  –1 +/
Сообщение от лютый жабист__ (?), 29-Авг-17, 04:46 
>> Т.к. сишники в основном потоке делают new и delete,  reallocate итд для дефрагментации памяти сишники  ... new и delete, reallocate  ... дефрагментации памяти
> Я правильно понимаю, что и все остальные рассуждения и "аргументы" такого же "качества"?

У тебя этим занимается специальный класс в отдельном потоке? Наверное называется он MyNotGarbageCollector ? :)))))

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

113. "Релиз языка программирования Go 1.9"  +/
Сообщение от Аноним (-), 29-Авг-17, 10:17 
В сишечке нет классов, new и delete.
Ответить | Правка | Наверх | Cообщить модератору

115. "Релиз языка программирования Go 1.9"  –2 +/
Сообщение от лютый жабист__ (?), 29-Авг-17, 12:04 
>В сишечке нет классов, new и delete.

Наиболее могучие сишники не умеют плюсики. Очень смешно...

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

116. "Релиз языка программирования Go 1.9"  +3 +/
Сообщение от Аноним (-), 29-Авг-17, 13:43 
Наиболее лютые жабисты не видят разницы между C и C++. Очень грустно…
Ответить | Правка | Наверх | Cообщить модератору

131. "Релиз языка программирования Go 1.9"  –1 +/
Сообщение от pripolz (?), 04-Сен-17, 18:04 
> У тебя этим занимается специальный класс в отдельном потоке? Наверное называется он
> MyNotGarbageCollector ? :)))))

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

В вторых - потоки не резиновые.

В третьих - как всегда пишешь на основе собственных размышлений и теории. Я тоже так могу, смотри: прежде чем ГЦ что-то освободит, он должен понять, что пора собственно это освобождать. Пока он будет понимать, мусор будет валить.

Далее, гигабайты в секунду - это вообще некорректные измерения. При чём тут гигабайты? Нужно считать кол-во системных вызовов, может он эти гигабайты один раз выделил разом, и затем освободил за пару микросекунд. И на какой машине? Короче, не позорься.

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

110. "Релиз языка программирования Go 1.9"  –1 +/
Сообщение от Ilya (??), 29-Авг-17, 03:49 
> C#: сборщик освобождал то, что не должен был. Прогеры долго танцевали с бубном,

Пять лет работаю с дотнетом, встречался с такими ситуациями только в руководствах. Но да, технически это возможно.

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

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

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




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

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