Re[6]: Почему к регистрам доступ дают, а к памяти на процесс
От: mike_rs Россия  
Дата: 26.04.23 07:32
Оценка:
Здравствуйте, netch80, Вы писали:

N>И АНБ не первопричина. Первопричина — корпорации, которые могут выставлять произвольные хитрые требования к своему железу — а корпорации, в среднем, хранят секреты местами получше государственных спецслужб (потому что коммерческий интерес сильнее моральных страданий о деньгах налогоплательщиков). АНБ с компанией получает уже готовые решения, хотя да, может использовать их более творчески


первопричина — деньги. Интел по подписке может включать доп ядра, увеличить частоту и поддержать больше памяти на серверных чипах. Без ME такого не провернуть
Re[7]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: alpha21264 СССР  
Дата: 03.05.23 12:06
Оценка:
Здравствуйте, Codealot, Вы писали:

A>>Давай для начала ты напишешь,

A>>1) как и за счёт чего будет происходить выигрыш в предполагаемой системе
A>>(по сравнению с системами, где уже есть prefetch/flush)
A>>Превысит ли этот выигрыш 1%.

C>Этот вопрос мы может быть рассмотрим, но чуть позже.


Этот вопрос нужно обсуждать прежде всего.
Потому что без него всё остальное бессмысленно.

A>>2) как ты собираешься делить этот ресурс с другими процессами.


C>... потому что ты задаешь настолько нелепые вопросы, что я удивляюсь. Точно так же, как это делается с основной памятью — запросил блок памяти и получил, или получил ошибку. Ты не в курсе, как это делается?


Это ты делаешь настолько странные заявления, что я удивляюсь.
"Точно так же как с основной памятью" поступить с кэшем процессора невозможно.
Потому что все характеристики кэша (в первую очередь объём)
по сравнению с основной памятью различаются в миллион раз.
Сейчас запрос на захват памяти удовлетворяется в 99.9999999% случаев.
Что сделает обычная программа, когда не получит запрошенную память?
До просто прекратит свою работу. Ну не предусматривают современные программисты таких сценариев.

А с кэшем что? А с кэшем всё наоборот — там 16К на всех.
Первый процесс его захватит, а остальным придёт отказ.
И что ты предлагаешь делать в этом случае?

Течёт вода Кубань-реки куда велят большевики.
Re[8]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: Codealot Земля  
Дата: 03.05.23 23:28
Оценка:
Здравствуйте, alpha21264, Вы писали:

A>Этот вопрос нужно обсуждать прежде всего.

A>Потому что без него всё остальное бессмысленно.

Простые вопросы сначала, сложные — потом.

A>А с кэшем что? А с кэшем всё наоборот — там 16К на всех.

A>Первый процесс его захватит, а остальным придёт отказ.
A>И что ты предлагаешь делать в этом случае?

Во первых, забудь про кэш. То, что предлагается — это не кэш, а такая же память как основная, только более скоростная.
Во вторых, твои данные давно устарели, а на современных процессорах одного только L1 кэша мегабайт, то есть в 64 раза больше твоей цифры. Ну а L3 может быть и все 128 мегабайт (это на десктопе, на серверах больше во многие разы). Не так давно, вообще всей памяти на компе было намного меньше.
В третьих, в таком случае можно, к примеру, просто выделить более медленную память. И/или добавить квоты.
И в четвертых, что делать с криворукими софтоделами, которые забирают слишком много памяти? То же что и всегда — не использовать их продукцию.
Ад пуст, все бесы здесь.
Re[9]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: alpha21264 СССР  
Дата: 04.05.23 15:19
Оценка:
Здравствуйте, Codealot, Вы писали:

A>>Этот вопрос нужно обсуждать прежде всего.

A>>Потому что без него всё остальное бессмысленно.

C>Простые вопросы сначала, сложные — потом.


Сначала вопрос "нахрена".
Потому что без него всё бессмысленно.

A>>А с кэшем что? А с кэшем всё наоборот — там 16К на всех.

A>>Первый процесс его захватит, а остальным придёт отказ.
A>>И что ты предлагаешь делать в этом случае?

C>Во первых, забудь про кэш.


Во-первых, не забуду. Ты предлагаешь впихнуть память вместо кэша.
И чем больше ты впихнёшь, тем меньше останется кэшу. С соответствующими последствиями.

C>То, что предлагается — это не кэш, а такая же память как основная, только более скоростная.


Это не "такая же память". У неё свойства другие.

C>Во вторых, твои данные давно устарели, а на современных процессорах одного только L1 кэша мегабайт, то есть в 64 раза больше твоей цифры. Ну а L3 может быть и все 128 мегабайт (это на десктопе, на серверах больше во многие разы). Не так давно, вообще всей памяти на компе было намного меньше.


В любых современных процессорах размер кэша L1 = 32 КБайта. Это связано с фундаментальными ограничениями.
Ты перепутал — Мегабайт — это размер кэша L2. И он медленнее в разы. L3 ещё больше и ещё медленнее.
Объём памяти никак не помешает криворуким программистам попросить больше, чем есть в наличии.
Но чем больше памяти ты впихнёшь в процессор, тем медленнее она будет.
И возвращаемся к вопросу "нахрена".

C>В третьих, в таком случае можно, к примеру, просто выделить более медленную память. И/или добавить квоты.


Я не знаю, что значит "добавить квоты" применительно к уже изготовленному процессору.

Если "выделить более медленную память", то мы возвращаемся к пункту ноль — а чем эта система лучше кэша?
Кэш именно это и делает. Располагает данные поближе-подальше.
Только он делает это автоматически, параллельно с основной работой, не теряя тактов основной программы.
А ты будешь делать это вручную, своими командами тратя время.
И возвращаемся к вопросу "нахрена".

C>И в четвертых, что делать с криворукими софтоделами, которые забирают слишком много памяти? То же что и всегда — не использовать их продукцию.


Тебе придётся выбросить всё. Вообще всё. Потому что как бы программисты ни писали свои программы,
всегда можно запустить одновременно столько программ, что "быстрая" память кончится.
А с кэшем такого не происходит — там нужные данные динамически подсасываются.
И возвращаемся к вопросу "нахрена".

Ну да, ты можешь приделать к своей "быстрой" памяти все механизмы работы кэша.
Многоуровневость, передачу данных между уровнями и основной памятью,
выталкивание ненужных данных, механизмы обеспечения когерентности...
Но только тогда именно кэш и получится. Только управляемый софтом и тратящий ОЧЕНЬ МНОГО лишнего времени.

Течёт вода Кубань-реки куда велят большевики.
Re: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: reversecode google
Дата: 04.05.23 15:23
Оценка:


почему ваши печень почки сердце желудок кишки находятся внутри под костями и прикрыты кожей ?
ведь было бы вам удобнее, каждый орган было бы видно насколько хорошо работает
и докторам было бы удобнее лечить
и вообще можно было бы вам отцеплять и прицеплять их, в случае плохой функциональности
Re[10]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: Codealot Земля  
Дата: 04.05.23 15:48
Оценка:
Здравствуйте, alpha21264, Вы писали:

A>Сначала вопрос "нахрена".

A>Потому что без него всё бессмысленно.

Ничего личного, но бессмысленно объяснять сложные вещи человеку, который не в состоянии их понять. Так что сначала надо убедиться, что я не буду метать бисер.

A>Это не "такая же память". У неё свойства другие.


В чем другие, кроме очевидной разницы в скорости и латентности?

A>В любых современных процессорах размер кэша L1 = 32 КБайта. Это связано с фундаментальными ограничениями.


Только что ты писал про 16К, а теперь уже 32? Ну и кто путает?

A>L3 ещё больше и ещё медленнее.


Всё еще на порядок быстрее, чем основная память.

A>Объём памяти никак не помешает криворуким программистам попросить больше, чем есть в наличии.


Объем кэша и сейчас не мешает им это делать. Если кто-то забивает весь кэш своими данными, то всем остальным остается только сосать лапу.

A>Я не знаю, что значит "добавить квоты" применительно к уже изготовленному процессору.


Добавить квоты для отдельных процессов.

A>не теряя тактов основной программы.


Ничего себе, какие новости. И кэш-промахи тоже совсем не теряют тактов?

A>А с кэшем такого не происходит — там нужные данные динамически подсасываются.


Происходит, просто ты этого не замечаешь.

A>Но только тогда именно кэш и получится. Только управляемый софтом и тратящий ОЧЕНЬ МНОГО лишнего времени.


Делать это как предлагаешь ты, несомненно, не имеет ни малейшего смысла.
Ад пуст, все бесы здесь.
Re[2]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: Codealot Земля  
Дата: 04.05.23 15:49
Оценка:
Здравствуйте, reversecode, Вы писали:

R>почему ваши печень почки сердце желудок кишки находятся внутри под костями и прикрыты кожей ?

R>ведь было бы вам удобнее, каждый орган было бы видно насколько хорошо работает
R>и докторам было бы удобнее лечить
R>и вообще можно было бы вам отцеплять и прицеплять их, в случае плохой функциональности

Нелепая, глупая аналогия.
Ад пуст, все бесы здесь.
Re[3]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: reversecode google
Дата: 04.05.23 15:59
Оценка: :)
C>Нелепая, глупая аналогия.

это называется инкапсуляция

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

жаль что вы не способны видеть таких аналогий
Re[4]: Почему к регистрам доступ дают, а к памяти на процесс
От: Codealot Земля  
Дата: 04.05.23 16:01
Оценка:
Здравствуйте, reversecode, Вы писали:

R>это называется инкапсуляция


И это концепция языков высокого уровня. Не ассемблера.
Ад пуст, все бесы здесь.
Отредактировано 04.05.2023 16:01 Codealot . Предыдущая версия .
Re[3]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: Wawan Россия http://www.wawan.ru/resume
Дата: 04.05.23 20:39
Оценка: +1 :)
Здравствуйте, Codealot, Вы писали:

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


R>>почему ваши печень почки сердце желудок кишки находятся внутри под костями и прикрыты кожей ?

R>>ведь было бы вам удобнее, каждый орган было бы видно насколько хорошо работает
R>>и докторам было бы удобнее лечить
R>>и вообще можно было бы вам отцеплять и прицеплять их, в случае плохой функциональности

C>Нелепая, глупая аналогия.


нормальная аналогия, не ко всему нужен доступ, сердце вот вообще не подсоединиено к нашей нервной ситеме
программисты без багов ничего написать не могут, и требуют доступ в кишки процессора, ха ха ха
Re[4]: Почему к регистрам доступ дают, а к памяти на процесс
От: Codealot Земля  
Дата: 04.05.23 21:24
Оценка:
Здравствуйте, Wawan, Вы писали:

W>сердце вот вообще не подсоединиено к нашей нервной ситеме


Если у тебя это так, то ты какой-то очень странный мутант.

Автономная нервная система — часть нервной системы организма, которая отвечает за бессознательную деятельность организма. К таким автоматическим процессам относятся процессы кровообращения, сердцебиения, дыхания, половая деятельность, выделение пота, слюны и т. п.


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


Может ты еще предложишь принудительно пересадить всех на java-процессор, и вперед, к пробитию нового уровня дна по производительности?
По хорошему, багоделов вообще нельзя допускать до ассемблера. Да и до программирования в целом.
Ад пуст, все бесы здесь.
Отредактировано 04.05.2023 21:26 Codealot . Предыдущая версия .
Re[10]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: CreatorCray  
Дата: 05.05.23 00:48
Оценка:
Здравствуйте, alpha21264, Вы писали:

A>В любых современных процессорах размер кэша L1 = 32 КБайта.

L1 бывает Code и Data, так что в сумме уже больше. И это per core.
Потом, у наших процов (M1/M2) L1 значительно больше чем 32К: 192K Code + 128K Data на perf корках.
Так что уже не у любых современных.

A>И возвращаемся к вопросу "нахрена".

+1
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[11]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: CreatorCray  
Дата: 05.05.23 00:48
Оценка: +2
Здравствуйте, Codealot, Вы писали:

C>Ничего личного, но бессмысленно объяснять сложные вещи человеку, который не в состоянии их понять. Так что сначала надо убедиться, что я не буду метать бисер.

Чувак...
В зеркало посмотрись, да?
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[12]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: Codealot Земля  
Дата: 05.05.23 01:26
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>Чувак...

CC>В зеркало посмотрись, да?

Я только предположил, вывод пока не сделал.
А ты можешь предъявить мне что-то конкретное?
Ад пуст, все бесы здесь.
Re[11]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: Codealot Земля  
Дата: 05.05.23 01:37
Оценка:
Здравствуйте, CreatorCray, Вы писали:

A>>И возвращаемся к вопросу "нахрена".

CC>+1

Просвещайтесь. https://developer.arm.com/documentation/den0042/a/Tightly-Coupled-Memory
Хотя, надо признать, в нашем мире Электрона и "гиг памяти — не ресурс" не стоит слишком рассчитывать на появление этого в мире x86
Ад пуст, все бесы здесь.
Re[4]: Почему к регистрам доступ дают, а к памяти на процесс
От: Философ Ад http://vk.com/id10256428
Дата: 05.05.23 19:32
Оценка:
Здравствуйте, netch80, Вы писали:

N>В PentiumPro были средства управления (публично не документировались).


А откуда известно, что были? Что-нибудь это использовало?
Всё сказанное выше — личное мнение, если не указано обратное.
Re[5]: Почему к регистрам доступ дают, а к памяти на процесс
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 06.05.23 07:15
Оценка: 7 (2)
Здравствуйте, Философ, Вы писали:

N>>В PentiumPro были средства управления (публично не документировались).


Ф>А откуда известно, что были? Что-нибудь это использовало?


У меня материальных хвостов не осталось, только воспоминания. Но выглядело так:

С нашей конторой дружила видеостудия, в которой как-то сказали (это было около 2000) "если у вас есть компы на PPro и вы апгрейдитесь, отдавайте их нам". Мы им отдали, они привели в порядок (от пыли и до адекватных кулеров), а потом показали результаты. Два рядом компа, один на паре PPro/180МГц, второй на паре PIII/500МГц, и первый быстрее выполняет операцию рендеринга и монтажа (такая себе софтовая задумчивость — часа 2-4 на один 10-минутный выходной ролик), процентов на 20.

Они таким образом задёшево набрали себе 3-4 выкинутых уже за моральной старостью (для остальных) dual PPro (именно dual, одиночные их не интересовали).

А потом их техдиректор рассказал про две фишки в основе этого успеха:
1) Кэш делился на 4 части, которые можно было раздельно блокировать от изменения. Софт пробегал по коду hot path рендеринга с открытой для изменения только одной четвертью, потом её блокировал, остальные, наоборот, разрешал, и уже начинал постоянно работать.
2) И вторая фишка — что dual PPro можно было заставить делать float128 арифметику при которой FPU объединялись и, что критично, давали более корректную реализацию IEEE754, чем тогдашние FPU.

Вот следующее поколение PIII (начиная с ~800МГц и особенно Tualatin) эта штука уже не могла обогнать — и когда новые PIII заметно подешевели, они на них стали переходить и PPro уже стал им неинтересен. (PIII давал SSE с исправленной плавучкой, оставался вопрос скорости.)

Позже другой человек рассказывал, что этот PPro с госзаказом на него вытянул тогда Intel из банкротства, вызванного пачкой причин, как FDIV bug и внутренние проблемы. Речь шла об HPC кластере ASCI Red. Правительство фактически оплатило полную цену за создание out-of-order процессора на базе x86 и это дало Intelʼу успех ещё лет на 20, так что даже провалы с P4 и Itanium их не убили. (К вопросу о ценности гос. лапы.)

Найти людей из той конторы сейчас сложно, и я не уверен, что они помнят подробности. Я и не старался, мне достаточно было того, что помню.
The God is real, unless declared integer.
Re[11]: Почему к регистрам доступ дают, а к памяти на процессоре - нет?
От: Codealot Земля  
Дата: 10.05.23 15:52
Оценка:
Здравствуйте, CreatorCray, Вы писали:

Ну что, ознакомился?
Ад пуст, все бесы здесь.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.