Re[7]: Странные баги Mac версии
От: Shmj Ниоткуда  
Дата: 21.11.23 05:21
Оценка:
Здравствуйте, drVanо, Вы писали:

S>>Но на железе от Apple типа M2 процессор?

V>Для тестов на М2, да — придется покупать сам девайс, но это как раз остаток от "большинства случаев", о которых я писал

Вы на каком железе запустили Sonoma на VMware? Если железо не от Apple — там нужен VMWare macOS Unlocker и прочие прибамбасы, причем работает все криво, если вообще заработает.
Re[8]: Странные баги Mac версии
От: drVanо Россия https://vmpsoft.com
Дата: 21.11.23 05:49
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Вы на каком железе запустили Sonoma на VMware? Если железо не от Apple — там нужен VMWare macOS Unlocker и прочие прибамбасы, причем работает все криво, если вообще заработает.


Вы имеете ввиду железо на хостовой машине? У меня древний i7-4770. Для удаленной отладки под Intel мне вполне хватает даже виртуальной 10.9, которую я еще ставил на VirtualBox. Для реальных тестов под М2 есть свежий макбук.

P.S. Недавно проапгрейдил на билдсервере под ESXi 5.0 виртуальную macOS c 10.8.5 на 10.11.6. Тоже полет нормальный.
Отредактировано 21.11.2023 5:53 drVanо . Предыдущая версия . Еще …
Отредактировано 21.11.2023 5:52 drVanо . Предыдущая версия .
Re: Странные баги Mac версии
От: Wawan Россия http://www.wawan.ru/resume
Дата: 21.11.23 07:51
Оценка:
сделай прогу однопоточной
процессоры интела очень многие косяки программистов в синхронизации между потоками прощают, т.к. аппаратно сами синхронизируют все записи между кешами всех ядер
процессоры АРМ так НЕ делают, и потому многопоточность будет работать случайным образом и требует программерские скилы гораздо скиловее самых скиловых интелоских скилов Ж)
Отредактировано 21.11.2023 7:52 Wawan . Предыдущая версия .
Re[6]: Странные баги Mac версии
От: Khimik  
Дата: 21.11.23 08:12
Оценка:
Здравствуйте, Shmj, Вы писали:

K>>Мне пока неохота скачивать cloc, в проекте около 300 модулей с общим размером 7 МБ (это размер всех .pas файлов).


S>Это только .pas — т.е. написанный руками код? Или и автогенеренныый?


Ну да, то что я написал.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[2]: Странные баги Mac версии
От: Khimik  
Дата: 21.11.23 08:13
Оценка:
Здравствуйте, Wawan, Вы писали:

W>сделай прогу однопоточной


В смысле не использовать всякие tthread? Ну мне это не требовалось.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[4]: Странные баги Mac версии
От: vladrsdn http://vvh-ru.blogspot.com/
Дата: 21.11.23 08:33
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Здравствуйте, drVanо, Вы писали:


V>>В большинстве случаев даже и девайс не нужен — достаточно поставить необходимую операционку на виртуалку прямо на рабочей машине.


S>MacOS не поставишь. Какой-нибудь хакинтош, который только со старой версией и то не все функции работают — возможно.


macos работает прекрасно в vmware player.
http://vvh-dev-ru.blogspot.com — Трудовые будни шароварщика http://vvh-ru.blogspot.com — Блог об оффлайне
Re[4]: Странные баги Mac версии
От: Khimik  
Дата: 21.11.23 10:44
Оценка:
Здравствуйте, rudzuk, Вы писали:

K>> Если это так, то у меня объявление — ищу кого-то кто вылечит этот Lazarus код, предлагаю 80 000р за работу.


R>На моей памяти ты уже третий раз работу местным предлагаешь. Так и не нашел постоянного партнера?


Да, хочу отдать всю свою работу на аутсорс, чтобы было больше времени изучать философию, физику, биологию, политологию, экономику и т.д.
Меня вообще раздражает это форумное сектантство, когда в каждом разделе сидит свой контингент, не интересующий ничем, кроме своей узкой специализации. Вам может быть интересно хоть что-то, кроме зарабатывния лишней штуки баксов?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[5]: Странные баги Mac версии
От: rudzuk  
Дата: 21.11.23 14:07
Оценка: +1
Здравствуйте, Khimik, Вы писали:

K> R>На моей памяти ты уже третий раз работу местным предлагаешь. Так и не нашел постоянного партнера?


K> Да, хочу отдать всю свою работу на аутсорс, чтобы было больше времени изучать философию, физику, биологию, политологию, экономику и т.д.


Это верный способ угандошить продукт. Впрочем, дело твое, а меня скорее удивляет факт, что за все время ты не нашел постоянства.

K> Меня вообще раздражает это форумное сектантство, когда в каждом разделе сидит свой контингент, не интересующий ничем, кроме своей узкой специализации.


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

K> Вам может быть интересно хоть что-то, кроме зарабатывния лишней штуки баксов?


А то!
avalon/3.0.2
Re[2]: Странные баги Mac версии
От: wantus  
Дата: 21.11.23 14:44
Оценка:
Здравствуйте, Wawan, Вы писали:

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

W>процессоры АРМ так НЕ делают, и потому многопоточность будет работать случайным образом и требует программерские скилы гораздо скиловее самых скиловых интелоских скилов Ж)

Обана. А детали где почитать?
Re[3]: Странные баги Mac версии
От: Wawan Россия http://www.wawan.ru/resume
Дата: 21.11.23 15:50
Оценка: +1
Здравствуйте, wantus, Вы писали:

W>Здравствуйте, Wawan, Вы писали:


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

W>>процессоры АРМ так НЕ делают, и потому многопоточность будет работать случайным образом и требует программерские скилы гораздо скиловее самых скиловых интелоских скилов Ж)

W>Обана. А детали где почитать?


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

ключевое слово для поиска
cache coherence

команды для Data Synchronization Barrier operation
https://developer.arm.com/documentation/ddi0460/d/System-Control/Register-descriptions/Cache-operations?lang=en

https://events.static.linuxfound.org/sites/events/files/slides/slides_10.pdf
https://en.wikipedia.org/wiki/MESI_protocol
Отредактировано 21.11.2023 16:16 Wawan . Предыдущая версия . Еще …
Отредактировано 21.11.2023 16:12 Wawan . Предыдущая версия .
Отредактировано 21.11.2023 15:54 Wawan . Предыдущая версия .
Re[4]: Странные баги Mac версии
От: icezone  
Дата: 21.11.23 16:17
Оценка:
Здравствуйте, Wawan, Вы писали:

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

W>>>процессоры АРМ так НЕ делают, и потому многопоточность будет работать случайным образом и требует программерские скилы гораздо скиловее самых скиловых интелоских скилов Ж)

W>ключевое слово для поиска

W>cache coherence

А этим точно не операционка должна заниматься?
Re[5]: Странные баги Mac версии
От: Wawan Россия http://www.wawan.ru/resume
Дата: 21.11.23 16:42
Оценка:
Здравствуйте, icezone, Вы писали:

I>Здравствуйте, Wawan, Вы писали:


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

W>>>>процессоры АРМ так НЕ делают, и потому многопоточность будет работать случайным образом и требует программерские скилы гораздо скиловее самых скиловых интелоских скилов Ж)

W>>ключевое слово для поиска

W>>cache coherence

I>А этим точно не операционка должна заниматься?


думаю этим занимаются в реализации std mutex и иже с ними
просто многие любят lock free алгоритмы а на арме их надо отлаживать заново

ключевые слова
arm lock-free
https://preshing.com/20120612/an-introduction-to-lock-free-programming/
Отредактировано 21.11.2023 16:47 Wawan . Предыдущая версия .
Re[6]: Странные баги Mac версии
От: drVanо Россия https://vmpsoft.com
Дата: 21.11.23 16:55
Оценка:
Здравствуйте, Wawan, Вы писали:

W>думаю этим занимаются в реализации std mutex и иже с ними

W>просто многие любят lock free алгоритмы а на арме их надо отлаживать заново

А вы точно ARM и ARM64 не путаете?

_InterlockedExchangePointer от MSVC:
0000000180001700 adrp x16, 000000018003E000 → _AtomicsV81Support@PAGE
0000000180001704 ldr w16, [x16,#9C0] → _AtomicsV81Support@PAGEOFF
0000000180001708 tbz w16, #0, 0000000180001718 ↓
000000018000170C swpal x1, x0, [x0]
0000000180001710 dmb ish
0000000180001714 ret
0000000180001718 cbz x16, 0000000180001734 ↓
000000018000171C ldaxr x2, [x0]
0000000180001720 stlxr w16, x1, [x0]
0000000180001724 cbnz w16, 000000018000171C ↑
0000000180001728 dmb ish
000000018000172C mov x0, x2
0000000180001730 ret


Тут вам аж 2 варианта: через атомарный SWPAL (для более новых процов) и LDAXR/STLXR (для старых).
Отредактировано 21.11.2023 17:09 drVanо . Предыдущая версия . Еще …
Отредактировано 21.11.2023 17:01 drVanо . Предыдущая версия .
Re[7]: Странные баги Mac версии
От: Wawan Россия http://www.wawan.ru/resume
Дата: 21.11.23 17:13
Оценка:
Здравствуйте, drVanо, Вы писали:

V>Здравствуйте, Wawan, Вы писали:


W>>думаю этим занимаются в реализации std mutex и иже с ними

W>>просто многие любят lock free алгоритмы а на арме их надо отлаживать заново

V>А вы точно ARM и ARM64 не путаете?


V>_InterlockedExchangePointer от MSVC:

V>
V>0000000180001700 adrp x16, 000000018003E000 → _AtomicsV81Support@PAGE
V>0000000180001704 ldr w16, [x16,#9C0] → _AtomicsV81Support@PAGEOFF
V>0000000180001708 tbz w16, #0, 0000000180001718 ↓
V>000000018000170C swpal x1, x0, [x0]
V>0000000180001710 dmb ish
V>0000000180001714 ret
V>0000000180001718 cbz x16, 0000000180001734 ↓
V>000000018000171C ldaxr x2, [x0]
V>0000000180001720 stlxr w16, x1, [x0]
V>0000000180001724 cbnz w16, 000000018000171C ↑
V>0000000180001728 dmb ish
V>000000018000172C mov x0, x2
V>0000000180001730 ret
V>


я хотел сказать лишь что при переходе с интела на арм надо перепроверить синхронизацию потоков
конкрентно какие отличия это надо мучать гугл, я про все варианты работы процессоров не копенгаген
судя по случайным глюкам у ТС это похоже оно
Re[8]: Странные баги Mac версии
От: drVanо Россия https://vmpsoft.com
Дата: 21.11.23 17:30
Оценка: +2
Здравствуйте, Wawan, Вы писали:

W>я хотел сказать лишь что при переходе с интела на арм надо перепроверить синхронизацию потоков


Я ХЗ что там перепроверять если пользоваться алгоритмами из коробки.

W>судя по случайным глюкам у ТС это похоже оно


У ТС вообще особый случай — там может быть вообще все что угодно, да и Lazarus/FPC у меня лично доверия вообще не вызывают.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.