@scala_ru

Страница 769 из 1499
Mikhail
26.06.2017
18:23:45
я подозреваю, что там на каком-то этапе дед код, который для доказательств используется не вырезается как минимум - оттуда лишние вызовы, которых там намного больше чем непосредственно самих мат-операций

скинь пример глянуть
https://github.com/Rudogma/scala-superquants/blob/master/shared/src/test/scala/superquantstests/BenchDoublePrecision.scala собственно это просто взял и собрал. но шейплесс я ручками с гитхаба запаблишил в локал под натив. у них сбт готов, но у меня оно ниоткуда не выкачалось само

Aleksei
26.06.2017
18:30:46
вот кстати в тг уже добавили возможность ввести впн =)

Google
Nick
26.06.2017
18:42:37
@rudogma гляну

@rudogma скинь лучше в лс

Arthur
26.06.2017
18:57:42
вопрос не совсем по скале, если мое приложение которое работает с реббитом упадет (и я не закрою коннекшн), коннекшн в реббите продолжит жить и повиснет пока я его не рестартану?

KrivdaTheTriewe
26.06.2017
19:00:33
Получается, пользователю отвечаем асинхронно?
синхронно , пришел запрос хттпшный, в рамках этой сессии нужно вернуть ответ

Roman
26.06.2017
19:01:36
Mikhail
26.06.2017
19:02:06
@rudogma скинь лучше в лс
https://gist.github.com/Rudogma/d9d7e71d81d8a80a0f5b678e92ec3ade инструкшн. с релиз билдом и без гц все таки чуть лучше стало ( я их случайно не там прописал), но все равно 29 секунд против 1 секунды на жвм

Vladimir
26.06.2017
19:04:10
30 сек, таймаут сокета на линухе

Mikhail
26.06.2017
19:07:30
30 сек, таймаут сокета на линухе
с каких пор? это в пхп такой такой таймаут был)

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

Arthur
26.06.2017
19:11:33
ну это понятно

вопрос в том как сделан реббит

Vladimir
26.06.2017
19:13:41
с каких пор? это в пхп такой такой таймаут был)
пруфов не будет ? недавно ковырял все ту же akka-http и где-то в дебрях SO видел это значение

Mikhail
26.06.2017
19:13:52
вопрос в том как сделан реббит
запускаешь в докере. коннектишься. отрубаешь сторону с которой коннектился - не просто процесс убиываешь, лучше именно сеть отключить (поэтому можешь со второго докера посмотреть) и потом смотреть открыт ли там еще порт)

Google
Aleksey
26.06.2017
19:21:17
Так, если телеграм заблокируют то встречаемся здесь https://gitter.im/scala-russian/Lobby (ну или не встречаемся, как хотите).

Ivan
26.06.2017
19:22:00
а как же vpn?

Mikhail
26.06.2017
19:22:37
А если интернет по талонам будет, где тогда встречи?
ноды по телефонкам поднимать будем

Wystan
26.06.2017
19:22:43
до встречи в фидо. ирл - это просто повод познакомиться с админами

Bernal
26.06.2017
19:22:56
А вы говорили: никакой политики.

Wystan
26.06.2017
19:23:13
Причем здесь политика?

Aleksey
26.06.2017
19:23:32
А вы говорили: никакой политики.
Так никакой политики и нет. Надо иметь запасной вариант просто.

Mikhail
26.06.2017
19:23:32
А вы говорили: никакой политики.
политике все равно, что ей здесь не место. отрубит и глазом не моргнет

Aleksey
26.06.2017
19:25:31
есть уже более наполненный https://gitter.im/dev-ua/scala
Когда я там был в послений раз там пытались говорить одновременно на украинском, ангилийском и русском.

Daniel
26.06.2017
19:26:02
английский не видел) а так проблем с пониманием вроде нет

Sergey
26.06.2017
19:28:10
сижу тут до последнего и не рыпаюсь, зобанят, там уже и найдемся где-нибудь

а пока и тут хорошо

Nick
26.06.2017
19:31:28
@rudogma Thread.sleep(sleep)

красава

Mikhail
26.06.2017
19:32:03
Google
Nick
26.06.2017
19:37:23
@rudogma убери все лишнее

Mikhail
26.06.2017
19:37:57
@rudogma убери все лишнее
там нет ничего лишнего

Nick
26.06.2017
19:38:03
Thread.sleep лишний

на самом деле эт плохой бенчмарк) но у тебя порядки прям адские какие-то

Mikhail
26.06.2017
19:38:30
Thread.sleep лишний
и? там время замеряется выполнения конкретной процедуры

Nick
26.06.2017
19:41:19
println(s"[run#${i}] ended in ${duration}ms")

у тебя типа это выводит разницу 40 секунд?

Mikhail
26.06.2017
19:42:07
на самом деле эт плохой бенчмарк) но у тебя порядки прям адские какие-то
это достаточно тривиальная хрень, которая показывает гигантский разрыв вполне по честному - так зачем мне еще какие-то бенчмарки? если бы оно шибко быстро выполнялось - там бы еще бабка на двое сказала отчего оно так быстро. но ежели простая математика - просто затегированная выполняется в 30 раз медленее - что там еще бенчить? там ниже цикл на примитивах дабл - он на нативе за 900мс у меня отрабатывает. поэтому там нет ничего лишнего и все показательно.

Nick
26.06.2017
19:44:53
да даже 900мс эт много

над будет покопать

KrivdaTheTriewe
26.06.2017
19:52:14
Ника озадачили , это редкое явление

Mikhail
26.06.2017
19:57:12
да даже 900мс эт много
вот специально даже. сделал абсолютно чистый проект. без зависимостей - только два цикла (5 раз по 30кк) и исполнение формулы на лонгах - те же 800 мс на каждые 30кк формулы в релизе без гц

Nick
26.06.2017
19:59:34
добавь в триаду avx2

потому что эт точно векторизация

Mikhail
26.06.2017
20:02:00
я когда первый раз про скаланатив услышал - думал, что решили скала синтаксис + систему типов в натив делать. думал так приятно будет теперь плюсовый код на скале писать. а потом оказалось, что там управления памятью нет, гц есть и с эфемерал типами не дружит, доказательства не вырезает. грустно вобщем) надо свой транслятор в плюсы написать ?

Nick
26.06.2017
20:02:20
как это нет?

делаешь gc none

и юзаешь clib

формально у неитива уже есть вообще все, только обертки напиши)

Mikhail
26.06.2017
20:03:20
как это нет?
как освободить память из под обьекта?

Google
Nick
26.06.2017
20:03:58
free

у тебя же есть malloc и free

Mikhail
26.06.2017
20:05:30
у тебя же есть malloc и free
val list = List(1,2,3) - free будет работать с list ?

Nick
26.06.2017
20:09:52
apply там явно вызовет new

если знаешь, layout листа, то можешь создать его через malloc и потом закастить xD

Mikhail
26.06.2017
20:11:20
если знаешь, layout листа, то можешь создать его через malloc и потом закастить xD
ну я так и подумал, что мне проще и дальше на плюсах

Daniel
26.06.2017
20:11:37
https://blog.buildo.io/exploring-scala-ast-in-your-browser-dc0b1fb743e0 красивульки

Mikhail
26.06.2017
20:11:37
или на жвм. в любом случае быстрее будет)

Admin
ERROR: S client not available

Mikhail
26.06.2017
20:14:44
https://blog.buildo.io/exploring-scala-ast-in-your-browser-dc0b1fb743e0 красивульки
это они скаламетой которую в жс собрали?

Daniel
26.06.2017
20:14:56
угу

Nick
26.06.2017
20:15:53
@rudogma кстати можешь попробовать создать лист и потом скастить и вызвать фри,вроде

Mikhail
26.06.2017
20:19:16
@rudogma кстати можешь попробовать создать лист и потом скастить и вызвать фри,вроде
это все равно не решит проблему с 30х для таггетов. а с тайплевел - там всегда много доказательств будет в скале и даже при переиспользовании обьектов - нестед колы никуда в нативе не деваются - именно на это я и грешу, как на причину разницы в 30х

Roman
26.06.2017
20:22:15
А почему бы не завернуть бенчмарк в jmh с perfasm и таки не узнать в чем причина тормозов? А то гадать на кофейной гуще можно весьма долго.

Nick
26.06.2017
20:32:17
Roman native не работает с jmh

Roman
26.06.2017
20:32:46
Ах, вы про нейтив. Я упустил этот момент

Nick
26.06.2017
20:33:49
@rudogma а если не сложно, добавь ll code в gist

Mikhail
26.06.2017
20:34:36
@rudogma а если не сложно, добавь ll code в gist
поясни по русски, что надо сделать)

Nick
26.06.2017
20:35:37
ll файл скинуть

D
26.06.2017
21:03:05
http://classicprogrammerpaintings.com/post/142321815809/hieronymus-bosch-a-visual-guide-to-the-scala

Google
Oleg
27.06.2017
02:19:50
Саратов
Я так понял, что Саратов, как и родной мой Волгоград в пролёте. Некого там набирать

A
27.06.2017
03:31:24
гыыыыы

у нас тут университетов как универмагов, а набирать некого

Yan?
27.06.2017
03:52:30
Я как-то не догоняю, что я сделал не так. Делал по этому примеру http://blog.originate.com/blog/2013/10/21/reader-monad-for-dependency-injection/ Но выходит довольно странно. То есть, идея не видит реализацию + вместо DiskReaders я должен вставить DiskReader





Aleksei
27.06.2017
04:36:55
Это play? Там же вроде DI ИСКОРОБКИ?

Yan?
27.06.2017
04:40:12
Это play? Там же вроде DI ИСКОРОБКИ?
Мне сказали делать без всяких фреймворков

Юрий
27.06.2017
04:40:38
воу воу, там в доке всё описано, как делать compile time dependency injection

и даже пример есть

Aleksei
27.06.2017
04:41:17
зачем прямо так сразу то? кто сказал?

Aleksei
27.06.2017
04:42:48
https://www.playframework.com/documentation/2.6.x/ScalaCompileTimeDependencyInjection

Aleksei
27.06.2017
04:47:11
А, ну если так и времени у вас много, то почему бы и нет =)

Я тут прочитал что блокировку тг лоббируют владельцы mail.ru чтобы всех пересадить на аську, лол.

Александр
27.06.2017
05:04:22
Ну так-то у них кроме аськи тамтам строится или как там его

Aleksei
27.06.2017
05:05:55
да, им не привыкать грязно играть.

Юрий
27.06.2017
05:11:58
Тимлид :)
тимлид сказхал не смотреть в доку и делать велосипед?

Страница 769 из 1499