0 1 2 3 4 ...9 10 11 12 13 ...18 19 20 21 22
Тъпанчев излезе много прозорлив. Поспорихме малко, че ако личностното развитие и равноправие на жените водят до по малко деца то по обратната логика за справяне с демографския проблем в България трябва да се ограничат правата на жените както и личностното им развитие. Няколко реплики по късно спря да ми отговаря. Явно ме маркираха като фашага
File | Size | Uploaded | Downloads | MD5 hash |
---|---|---|---|---|
Screenshot 2024-11-27 at 18.49.30.png | 1925072 bytes | 27.11.2024 | 110 | 98fa12afc31d41a0910dd682f704634b |
File | Size | Uploaded | Downloads | MD5 hash |
---|---|---|---|---|
1736038946551915.jpg | 43001 bytes | 05.01.2025 | 83 | 6bbd28d9c28437749897d0700038584d |
китайците за моя изненада пускат и нелоши опен-сорс неща. В случая Hunyuan с една невидийка с > 45 GB VRAM и най-хубавото е липсата на цензура https://www.youtube.com/shorts/v-bh91qcVNc
акаунт
на
Единия Създадено на 05.01.2025, видяно: 335 пъти. #130830
Аз днеска разбрах, че има "Biblehub" - не знам за какво иде реч!
Не е на добре...В началото към 3-тата минута има и опити да се генерира и нещо ала game of thrones(сори @реба)
Реба Създадено на 19.01.2025, видяно: 161 пъти. #132162
хахаха, значи нахендрих се на много специфичен проблем - гцц не генерира код за static функции ако не се ползват в самия файл, логиката е ясна - идеята на статик в С е да не се вижда извън файла, и щом не се ползва вътре във файла, значи е мъртво месо. хубаво ама в С++ статик има и втори смисъл, когато е в някой клас. тогава е видима отвън, но компилатора явно по логиката за глобална статик пак я реже. търсих в гугъла някой да е удрял тоя проблем, сигурно има, но гугъла освен за намиране на магазини вече за нищо не става. гпт обаче разбра проблема и предложи работещо решение, голям кеф хахаха
И какво беше решението?
Аз имах скоро подобен проблем и решението никак не беше просто. Сигурно щото не ползвах ИИ. Трябваше ми не само статична функция ами и статична променлива която да е в специфична линкерска секция където се акумулират всички подобни променливи т.е. те са статични за да не ги ползваш по име, но са безименно глобални. Първо, че трябва да се маркира самата променлива със съответен нестандартен gcc attribute за да не я разкара още компилатора, второ трябваше да се каже на линкера този генериран .о обектен файл да го линква въпреки, че в него няма никакви глобални функции или променливи които да се ползват някъде другаде - линкерската опция се нарича whole arhive. И това гарнирано с cmake простотии които не се поддържат от по старите cmake-ове. CI builda заприлича на нищо и половина накрая ама засега работи. Ставаше въпрос за event handlers които да се закачат и викат автоматично без да се налага да ги добавяш с код в разните му списъци.
Интересно, real life case за намиране на гаден бъг водещ до краш с ИИ модел:
Нали се сещаш, че общата колективна логика на всички милЯрди дивелъпъри по планетата е много по-различна от твойта. Това не се отнася само за static, ами за всяка ф-я. Ако не се вика никъде, значи не трябва и е нормално да се реже. Аз просто не мога да си представя случай, в който да не искаш да се реже, освен ако не линкваш so, но, естествено, хората са го предвидили.
Как точно ще се отреже ЕДНА функция от обджект файл ако не се вика? :)
Тъпак, не си в състояние да възприемеш дори много елементарен текст.
Реба Създадено на 19.01.2025, видяно: 122 пъти. #132171
а ти защо реши че не се вика никъде? гпт разбра проблема и предложи решение (даже две), а ти чел недочел реши лекции да изнасяш
Реба Създадено на 19.01.2025, видяно: 120 пъти. #132173
ами да, с нестандартен гцц атрибут attribute__((used)). даде и още едно решение което не пробвах - някаква опция на компилатора. обаче трябва да се провери дали това влияе само на компилатора, защото да не се окаже че обхваща и линкера - тогава греда, все пак линкера трябва да реже неизползваните функции
Тц. Работата на линкера е да вкарва цели обектни файлове с които да resolve unresolved symbols. Не му е работа да анализира ти какво си вкарал в този обектен файл и да изреже това което според него е излишно. Това е работа на компилатора. Има и още един тънък момент тука - link time optimisations - които въпреки името са всъщност част от процеса на компилация отложен до последния момент за да направи пълна оптимизация върху целия изпълним файл а не ограничена само върху един сорс файл.
Реба Създадено на 19.01.2025, видяно: 114 пъти. #132179
либгцц е по-голямо от паметта на контролера ми, ако беше както казваш никаква валидна бинка не можеш да сглобиш
Lol, are you still butthurt? Do you need a safe space? :) Thoughts and prayers! :)
Отговорът на въпроса ми, разбира се, е LTO, но ти си толкова посредствен, че дори не знаеш какво е това. Просто спри да си мислиш, че си най-умния, не си. Като цяло си малко под средното ниво.
Библиотеките са колекция/архив от обектни файлове. Линкера използва само тези, които са необходими. Не съм гледал, но не бих се учудил ако всяка функция в libgcc е в отделен сорс/обектен файл.
0 1 2 3 4 ...9 10 11 12 13 ...18 19 20 21 22