@proGO

Страница 212 из 1674
Phil
08.09.2016
07:40:38
а. я опять чтоо сложное искал. дальше вче более менее понятно

Nik
08.09.2016
14:17:02
Вопрос по gorm и UUID.

если у меня UUID в базе в формате 806D3CE448F8FA70CC45D0473B140505

но выгребаю я hex(UUID)

Google
Nik
08.09.2016
14:17:50
а селек по нему делаю .... where UUID = 0x806D3CE448F8FA70CC45D0473B140505

можно ли это прикрутить к GORM?

Nikolay
08.09.2016
15:35:08
@elvis_live если не пугает язык - тут вот есть код для готовое решение в GORM: http://qiita.com/roothybrid7/items/dc58bae01f941e1a72be

Paul
08.09.2016
15:39:30
ой

японский

Igor ⛷
08.09.2016
16:14:37
https://www.kickstarter.com/projects/1604791210/go-gopher-toy

Viacheslav
08.09.2016
20:55:43
Есть json api, которое отвечает обычным map[string]int , но в случае ошибки отвечает {"error": error_string}. Как такое праивльнее и красивве всего хендлить?

hamper ?
08.09.2016
21:11:22
ну можно например как map[string]interface{} и если нет error все поля к int приводить

Viacheslav
08.09.2016
21:31:57
это плохое решение так как потом с этим нужно мапом нужно дальше работать

оно мне не нравится так как interface{}

сейчас сделал отдельную структуру с полем Error и Map

с кастомным UnmarshalJSON, но выглядит тоже не очень...

Google
Дмитрий
09.09.2016
04:19:52
Да просто поиском по подстроке проверить не ошибка ли пришла, и на основании проверки уже в нужный тип распаковывать

Foxcool
09.09.2016
05:22:29
какие модули на саблайм ставите для работы с го? (:

Valentin
09.09.2016
06:25:37
SublimeGo

Больше ничего не надо

Да и нету больше вроде там

Daniel
09.09.2016
06:29:51
Еще один

Компайлер запускать

Доберусь до компа - отпишусь

[Anonymous]
09.09.2016
10:35:19
Где-то в коде поселился оверхед, можно ли как-нибудь узнать какая строчка кода замедляет работу программы?

Kirill
09.09.2016
10:36:43
можно анализировать сам код. можно профилировать прогу. выбирай.

[Anonymous]
09.09.2016
10:40:13
Ну раз этот медленный код писал я, значит второе)

Kirill
09.09.2016
10:40:33
это не отрицает возможность первого

вот самый простой вариант: https://golang.org/pkg/net/http/pprof/

[Anonymous]
09.09.2016
10:41:08
Анализировать значит самому искать ошибку в коде глазами?)

Kirill
09.09.2016
10:41:22
ну, лучше искать мозгом

[Anonymous]
09.09.2016
11:07:48
Спасибо!

Kirill
09.09.2016
11:08:29
https://golang.org/pkg/runtime/pprof/
проще же net/http/pprof)

Zver
09.09.2016
11:14:09
проще же net/http/pprof)
Для полного комплекта.

Google
[Anonymous]
09.09.2016
11:30:24
проще же net/http/pprof)
pprof web шикарная вещь)

pprof показал что все время занимает math.rand.(*rngSource).Seed , т.е. генерация случайных чисел. Нельзя ли ее ускорить?

rand.Seed(int64(time.Now().Nanosecond())) new_slice := all_values1[rand.Intn(20)] rand.Seed(int64(time.Now().Nanosecond())) new_slice += all_values2[rand.Intn(5)]

Вот код который отнимает все время

Из 30 секунд работы программы, эта часть отнимает 26сек что очень много

Kirill
09.09.2016
11:52:51
зачем ты конвертируешь int64 в int64?

[Anonymous]
09.09.2016
11:54:08
зачем ты конвертируешь int64 в int64?
cannot use time.Now().Nanosecond() (type int) as type int64 in argument to "math/rand".Seed

Kirill
09.09.2016
11:54:45
а, да, это же Time.Nanosecond(), а не Duration.Nanosecond()

ошибся

хм, сейчас посмотрю, что можно сделать

дай больше кода, а?

Gregory
09.09.2016
11:55:57
посмотри https://github.com/miolini/fastrand

Kirill
09.09.2016
11:57:33
он же работает только на amd64

[Anonymous]
09.09.2016
11:58:40
дай больше кода, а?
ну сейчас попробую написать отдельно

суть в том что на 1000000 итераций этот код замедляет всю программу

Kirill
09.09.2016
11:59:51
зачем тебе лям итераций? О_о

[Anonymous]
09.09.2016
12:00:14
Нужен лям рандомных данных)

Да

Kirill
09.09.2016
12:02:48
боюсь спросить зачем

[Anonymous]
09.09.2016
12:02:54
Моделяция физических процессов методом Монте-Карло

Google
[Anonymous]
09.09.2016
12:04:03
Да, я пробовал, но меня и псевдо устраивает, разницы не увидел

А крипто еще медленнее боюсь

Admin
ERROR: S client not available

[Anonymous]
09.09.2016
12:04:24
И лям это очень мало если честно

Там бы 60 лямов, но сейчас попробую fastrand который выше скинули

Kirill
09.09.2016
12:05:05
в таком контексте возможно да

Там бы 60 лямов, но сейчас попробую fastrand который выше скинули
но fastrand только amd64, нигде еще он не заработает

[Anonymous]
09.09.2016
12:06:20
Ну главное чтобы эффект был)

Kirill
09.09.2016
12:07:33
ну, смотри сам. я вот сейчас на x86 ядре сижу.

чтобы повторений не было

[Anonymous]
09.09.2016
12:14:17
+

посмотри https://github.com/miolini/fastrand
Попробовал, но что-то он не то генерирует, смотрите сами

0 : 8 0 : 8 0 : 0 1 : 4 1 : 4 1 : 0 2 : 12 2 : 8 2 : 12 3 : 0 3 : 8 3 : 8 4 : 8 4 : 4 4 : 0 5 : 4 5 : 4 5 : 12 6 : 12 6 : 8 6 : 4 7 : 0 7 : 4 7 : 12 8 : 0 8 : 12 8 : 8 9 : 4 9 : 12 9 : 0

Lev
09.09.2016
12:21:24
может поверх фастранда Speck навинтить? он не сильно тормозной вроде бы

https://en.wikipedia.org/wiki/Speck_(cipher)

(не поверх, вместо)

[Anonymous]
09.09.2016
12:22:56
Мне тут подсказали: do not use rand.Seed or rand.Indn/etc; they operate on a global RNG and are protected by a mutex; create a separate RNG r := rand.New(); r.Seed(whatever);

Lev
09.09.2016
12:23:49
https://habrahabr.ru/post/271435/ вот тут со слов "Не шифрованием единым"

[Anonymous]
09.09.2016
12:24:41
scratch that, fastrand is worthless, period.

Lev
09.09.2016
12:24:51
... ну а для пущей рандомности - подмешивать на вход нормальный рандом ещё. изредка.

Google
Sergey
09.09.2016
12:49:03
твой пароль от lastpass?

Алексей
09.09.2016
12:49:13
ага

)))

Sergey
09.09.2016
12:49:50
ну мыльник тоже давай тогда

Zver
09.09.2016
12:49:55
А логин?

[Anonymous]
09.09.2016
13:05:09
gccgo и go вместе не подружить никак?)

Всмысле они конфликтуют друг с другом

попробовал без Seed, спасибо стало быстрее, но все равно медленно считает, но это уже не вина рандома, 5 секунд только gc отнимает

Миллион итераций считает за 65.75 сек на go1.7 сейчас попробую gccgo

Zver
09.09.2016
13:11:16
А как посоветовали, использовали не глобальный рандом?

Если гц много отъедает времени, то надо минимизировать выделение памяти.

Хотя из 65 секунд 5 секунд это мелочь.

Страница 212 из 1674