<bgdev />free

| |  


All tags 2023 9may ai algorithm alpha amd american api argon2 arm asm asmbb assembler attachment awareness balgaria bay888 bcrypt bender beta bgdev-next bgdev-next.👍 big.data bitchnigga bitcoin bmw boi borg brexit bug bulgaria business c cad chat cloud computer-names console crossorigin deprivation desktop dna dotnet email eupl falling feature forum foundation fp fresh fun game gcc github goats google gpl gpt gpt.3.5 gypsies happiness harvard hash improvement include investment it java javascript js kleta kleta.maqka.balg lambi language learning leftovers legend level levenshtein.dist libx license linkedlist linux m0 ma mcafee mele microsoft minimag minimalism negro net nginx nigga not.a.bug oop paradigm parler patterns perception persuasion pipe play.station politics populi pornhub pow pro programming protonmail python reba rust sci-fi scripting seks seo server shell sleep smartbeauty soft-skills sqlite srabska sse starship sugerface syntax tablet tailwindcss telegram theme thug troll80lvl tutanota typescript uacme ui uk unix untermensch upload uptime usa utilities ux vb via viber virtual.reality vox vps vulnerable war wasm weapons-grade web windows word x86 xbox xss youtube zig ziglang Übermensch БОКЕБЪЛГАРИН БЪ БЪлгария Белезниците Били Били.Белезниците БялДонор Веган Виста Възраждане ГЛУПАК Гана Глиста ЕС Казарма Копейкин Мода.и.овча.мисъ НЕКАДЪРНИК НРБ ПО-ЗЛЕ.И.ОТ.РАБИ Подкасти Разни Румен СИК СКУМ СетенЧук Скум ТИР Туче Украйна Урсула Яначков авангард аз айфонджия алгоритми амбиции анархизъм антиваксъри армения аудио аутисти бази.данни бакъп без без.пръчове безпросвета бенчмарк биготи биомаса бира боклук борисов ботев брадва булшит бъг бъгове бял ваксина вандал век венерика викинги вицове вишу война вървежен гана ганорник гей гейщина германия герои гешев глупак говеда групировка гюбек данъкоплатец двойни.стандарти дедотия демокрация дизайн дисциплина добитък докери долар донори држава дришльо дрон ебане еврогейски.съюз езици експеримент електроника електроника.s2 емиграция ендпойнт енум ерген ергономия жалкар задача затоплизъм защита здраве златен злато игри идеали идиократ идиократи идиокрация идиот избори избори.рабин изкуство икономика имбецили имейл инвестиране инокулация инструмента интервю ипад искам.да.си.реда казах камшикодържач капитализъм карабах караница картечница кино клавиатура ковид19 колайдер колям.кур комари комплексар комунизъм консолидация конспирации космонавтика кофа кофит-19 краставица криптовалути курви кучелюбци лайно лаладжия лаптоп либерастия литература лоши.практики луд лъжеучени лъжец любов майни майтапи малоумници мафия мениджмънт месо местене метавселена метафизика механика мистика мисъл мода мода.овча.мисъл модерация морал мутра мутри наука национализъм не.it негър некадърник некадърници неон нидерландия овча овчи олигофрени организация офтопик парички партия педал пенджури пенсия пишока плюскане победа погромист поезия политика порно посредствен почивка празници прасе превод предалщина програмиране проект проста простотии против.правилата проф пръч пръч.дришльо пръчка психика психични.болести психология пустиняк путин путката путьо рабин рабин.е.шибан.пе работа радост разврат разни разработка расизъм резерват рейтинг реклама рекламен религия рест ризи ропче ропчета русия руски.език рутина самоковска сасипаха секира село селяндур сериали сериозно.програм сетен сеянин симулация скопяване скръм слушалки сортиране софия софтуер софтуни социализъм спектрометър спринтове сране стандарти стил стуйо стюи сушилня сцена съвет съм сън сървър сърничка таб ташаци телевизия тема територията терминология термояд технологии титли традиция тролинг тръмп туба туче тъпак тъпанари тъпня уиндоус украйна умнокрасивци фалит фантастика фашизъм фейк.акаунти физика филми форум форумни.проекти футбол хазарт хамали харабия хардуер хахаха хомофобия хостинг храна хумор цайко цайси целофан цензура цензурра циганин чалга чалгар чекии чернокраки честота чипове чнг чужбина чук шпация щайга юан яката яко ям 🔨 😂 🪓


Задача НЕ за интервю

  

0 1 2 3 4 5 6 7 8 9 ...20 21 22 23 24 ...32 33 34 35 36


  |  Създадено на 21.09.2020, видяно: 1685 пъти. #11458
johnfound
|

T.e. смяташ, че допълнителните регистри са безполезни? :)

Всъщност прекалено многото регистри е също толкова зле, колкото прекалено малкото регистри. Във всеки случай, да се пише на 64 битов асемблер заради повечето регистри е безсмислено. Вредите са повече от ползите.

Aaanyway, защо твоят memory heap не е толкова бърз като jemalloc? :)



  johnfound  Последно редактирано на 21.09.2020 от johnfound, видяно: 1684 пъти. #11459
|

E, хайде сега да не се лъжем. Ти не гледаш собствен код на език от високо ниво, гледаш кода на други. :)

Безразлично ми е какво си въобразяваш за кода ми. (впрочем, от чий точно код гледам, че ми стана интересно?) Правилният код на асемблер много рядко съответства на някакъв добър код на език от високо ниво.

Обратно - знам за няколко проекта, които използват именно този подход, но резултатите рядко са добри - асемблерната програма се получава с 10..20% по-бърза от кода на C.

Докато при писане всичко направо на асемблер, често се получава двойна или тройна скорост на изпълнение.



  johnfound  Последно редактирано на 21.09.2020 от johnfound, видяно: 1682 пъти. #11460
|

Aaanyway, защо твоят memory heap не е толкова бърз като jemalloc? :)

А ти спря ли да биеш жена си всяка вечер? Да или не!?



  |  Последно редактирано на 21.09.2020 от |, видяно: 1675 пъти. #11461
johnfound
|

Aaanyway, защо твоят memory heap не е толкова бърз като jemalloc? :)

А ти спря ли да биеш жена си всяка вечер? Да или не!?

Да, спрях. Та, защо твоят невероятно оптимизиран memory heap е по-бавен от jemalloc или този на libc? :)

Между друтото този малоумен въпрос показва, че си нямаш идея от формална логика. :) И двата отговора са ВЕРНИ, а не грешни.



  johnfound  Създадено на 21.09.2020, видяно: 1661 пъти. #11462
|
johnfound
|

Aaanyway, защо твоят memory heap не е толкова бърз като jemalloc? :)

А ти спря ли да биеш жена си всяка вечер? Да или не!?

Да, спрях. Та, защо твоят невероятно оптимизиран memory heap е по-бавен от jemalloc или този на libc? :)

А по-бавен ли е? Силно ме съмнява! Просто защото от съображения за лесна преносимост на кода - Windows версията използва heap функциите на WinAPI, Linux версията използва heap функциите на libc, a KolibriOS версията, да има написан heap, който обаче е много далече от понятието "невероятно оптимизиран", при това е и доста бъгав. rofl

А когато ми трябва наистина висока скорост на изпълнение, не използвам heap въобще.



  johnfound  Създадено на 21.09.2020, видяно: 1658 пъти. #11463
|

И двата отговора са ВЕРНИ, а не грешни.

Естествено, че и двата отговора са верни. Аз затова и зададох въпроса. А ти избра този отговор, който те компрометира по-малко. Щото все нещо трябваше да отговориш. rofl rofl rofl



  |  Създадено на 21.09.2020, видяно: 1656 пъти. #11464
johnfound
|
johnfound
|

Aaanyway, защо твоят memory heap не е толкова бърз като jemalloc? :)

А ти спря ли да биеш жена си всяка вечер? Да или не!?

Да, спрях. Та, защо твоят невероятно оптимизиран memory heap е по-бавен от jemalloc или този на libc? :)

А по-бавен ли е? Силно ме съмнява! Просто защото от съображения за лесна преносимост на кода - Windows версията използва heap функциите на WinAPI, Linux версията използва heap функциите на libc, a KolibriOS версията, да има написан heap, който обаче е много далече от понятието "невероятно оптимизиран", при това е и доста бъгав. rofl

А когато ми трябва наистина висока скорост на изпълнение, не използвам heap въобще.

Говоря за твоята имплементация, не за факта, че се налага да използваш стандартните (написани на C) защото твоята е бавна. :)



  |  Създадено на 21.09.2020, видяно: 1655 пъти. #11465
johnfound

Естествено, че и двата отговора са верни. Аз затова и зададох въпроса. А ти избра този отговор, който те компрометира по-малко. Щото все нещо трябваше да отговориш. rofl rofl rofl

Нито един от двата отговора не ме компрометира ИЗОБЩО. Което щеше да знаеш, ако беше учил формална логика. :)



  Унуфри  Създадено на 21.09.2020, видяно: 1651 пъти. #11466

ФМИст отново накара инжинерите от меитата да си преглътнат дипломите и еготата 😁. Дон Реба четеш ли?



  Courvoisier  Създадено на 21.09.2020, видяно: 1649 пъти. #11467

Много интересно мерите пишоци 3 страници. Мен ме грабна 32 vs 64 бита и скорост. Понеже ми се налага да ползвам криптография, знаете ли, че SHA512 е около 50% по- бърз от SHA256 на 64 битови машини. Въпреки, че операциите са повече, в същото време се обработват 64-bit word-a.

ПС: Low level-а никога не ми е бил интересен, но неволя...



  Унуфри  Създадено на 21.09.2020, видяно: 1646 пъти. #11468
Courvoisier

Много интересно мерите пишоци 3 страници. Мен ме грабна 32 vs 64 бита и скорост. Понеже ми се налага да ползвам криптография, знаете ли, че SHA512 е около 50% по- бърз от SHA256 на 64 битови машини. Въпреки, че операциите са повече, в същото време се обработват 64-bit word-a.

ПС: Low level-а никога не ми е бил интересен, но неволя...

Абе дори и на мене като на прост .нетаджия ми замириса тезата на другаря за надмощието на х32 над х64. Ако на нещо му потрябва повече от 3 гиг рам, ко прайм не знам...



  |  Създадено на 21.09.2020, видяно: 1645 пъти. #11469
Courvoisier

Много интересно мерите пишоци 3 страници. Мен ме грабна 32 vs 64 бита и скорост. Понеже ми се налага да ползвам криптография, знаете ли, че SHA512 е около 50% по- бърз от SHA256 на 64 битови машини. Въпреки, че операциите са повече, в същото време се обработват 64-bit word-a.

ПС: Low level-а никога не ми е бил интересен, но неволя...

Това е интересно. Мерил ли си дали ША инструкциите са бързи? Ако не се лъжа почти всички процесори имат някакви варианти.



  |  Създадено на 21.09.2020, видяно: 1644 пъти. #11470
Унуфри

Абе дори и на мене като на прост .нетаджия ми замириса тезата на другаря за надмощието на х32 над х64. Ако на нещо му потрябва повече от 3 гиг рам, ко прайм не знам...

Ще използва сегменти. :) Back to the ... past. :)



  bvbfan  Създадено на 21.09.2020, видяно: 1642 пъти. #11471
|

Хехехе, смешник, аз определено разбирам от програмиране МНОГО ПОВЕЧЕ от теб. :) Освен многото повече опит, имам и ДИПЛОМА доказваща го. :)

И аз, за разлика от теб имам доказателство, че trie e по-бързо. Защото го тествах вчера. Код с trie на Go e 1.5х по-бърз от НхМ сравнение на C.

Много са ми забавни екземпляри като теб и bvbfan, "ама то така", "ама то иначе". Ама да си признае "ей, верно бе, не се бях сетил за това" е НЕВЪЗМОЖНО. Винаги сте прави, нали? :)

След това мнение, вече ясно, че си пълен хал-хабер :-)



  |  Създадено на 21.09.2020, видяно: 1638 пъти. #11472
bvbfan
|

Хехехе, смешник, аз определено разбирам от програмиране МНОГО ПОВЕЧЕ от теб. :) Освен многото повече опит, имам и ДИПЛОМА доказваща го. :)

И аз, за разлика от теб имам доказателство, че trie e по-бързо. Защото го тествах вчера. Код с trie на Go e 1.5х по-бърз от НхМ сравнение на C.

Много са ми забавни екземпляри като теб и bvbfan, "ама то така", "ама то иначе". Ама да си признае "ей, верно бе, не се бях сетил за това" е НЕВЪЗМОЖНО. Винаги сте прави, нали? :)

След това мнение, вече ясно, че си пълен хал-хабер :-)

Виждам, че си много добър на празните приказки, но като се стигне до конкретика минаваш на "да, ама..." :) Жалка история. :)



  Courvoisier  Последно редактирано на 21.09.2020 от Courvoisier, видяно: 1636 пъти. #11473

Има доста писано по нета. Най-сбито е написано в stackexchange.

Е, колко по- бързо ще е зависи от инструкциите на процесора. Толкова low-level не разбирам.

На някои процесори може и 256 да е по- бърз. Intel SHA extensions

В частност, blake2 е по- бърз, но ми е nuget, докато sha-тата ги имам в cryptographic api-то.

Е сега ще пусна на Zen architecture

Ми, специално на моята AMD машина Windows Subsystem for Linux:

Обаче на сървърите сме с малко-годишни xeon, там е по- бърз...


nekav-negar@nekav-laptop:~$ openssl speed sha256 sha512
Doing sha256 for 3s on 16 size blocks: 33960717 sha256's in 2.98s
Doing sha256 for 3s on 64 size blocks: 24800970 sha256's in 3.00s
Doing sha256 for 3s on 256 size blocks: 12545519 sha256's in 3.00s
Doing sha256 for 3s on 1024 size blocks: 4421464 sha256's in 3.00s
Doing sha256 for 3s on 8192 size blocks: 621186 sha256's in 3.00s
Doing sha256 for 3s on 16384 size blocks: 314039 sha256's in 3.02s
Doing sha512 for 3s on 16 size blocks: 8987077 sha512's in 3.00s
Doing sha512 for 3s on 64 size blocks: 9149068 sha512's in 3.00s
Doing sha512 for 3s on 256 size blocks: 4079757 sha512's in 3.00s
Doing sha512 for 3s on 1024 size blocks: 1521684 sha512's in 3.00s
Doing sha512 for 3s on 8192 size blocks: 222925 sha512's in 3.00s
Doing sha512 for 3s on 16384 size blocks: 113457 sha512's in 3.00s
OpenSSL 1.1.1d  10 Sep 2019
built on: Mon Apr 20 20:23:01 2020 UTC
options:bn(64,64) rc4(8x,int) des(int) aes(partial) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -Wa,--noexecstack -g -O2 -fdebug-prefix-map=/build/openssl-8Ocme2/openssl-1.1.1d=. -fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes  16384 bytes
sha256          182339.42k   529087.36k  1070550.95k  1509193.05k  1696251.90k  1703713.57k
sha512           47931.08k   195180.12k   348139.26k   519401.47k   608733.87k   619626.50k

На Intel 7-мо би трябвало да е по- бърз.



  bvbfan  Създадено на 21.09.2020, видяно: 1635 пъти. #11474

Ние нямаме дипломи, не сме писали prefix/redix trie, не знаем защо се прави, компактността, която имаш с база данни е много по-добра, управлението на паметта - много по-добро, бързодействието - добре регулирано. Щом не си наясно с тези неща, няма как да си "велик" програмист, нищо повече от поплювко.



  |  Последно редактирано на 21.09.2020 от |, видяно: 1634 пъти. #11475
bvbfan

Ние нямаме дипломи, не сме писали prefix/redix trie, не знаем защо се прави, компактността, която имаш с база данни е много по-добра, управлението на паметта - много по-добро, бързодействието - добре регулирано. Щом не си наясно с тези неща, няма как да си "велик" програмист, нищо повече от поплювко.

И добре регулирано, разбира се, означава винаги бавно? :)

Да напомням ли, че "поплювкото" знае какъв компилатор използва ARM? :)



  bvbfan  Създадено на 21.09.2020, видяно: 1631 пъти. #11476

Не не си наясно, че може да бъде също толкова бързо, колкото и другото. Регулира се с кеша, който може да се бъде достатъчно голям, т.е. резултатите са в паметта. Но това ти не го знаеш и бълваш плява, която е напълно некомпетентна.



  |  Създадено на 21.09.2020, видяно: 1630 пъти. #11477
Courvoisier

Има доста писано по нета. Най-сбито е написано в stackexchange.

Е, колко по- бързо ще е зависи от инструкциите на процесора. Толкова low-level не разбирам.

Имах предвид, че някои процесори имат ЕДНА инструкция, която смята ША. Например това:

https://en.wikipedia.org/wiki/Intel_SHA_extensions


0 1 2 3 4 5 6 7 8 9 ...20 21 22 23 24 ...32 33 34 35 36


Задача НЕ за интервю

  



AsmBB v3.0 (check-in: 7544654b24928b93); SQLite v3.47.0 (check-in: 03a9703e27c44437);
©2016..2024 John Found; Licensed under EUPL; Powered by Assembly language Created with Fresh IDE