Что за битва?alex_127 wrote: 15 Nov 2021 22:41друг, других не осталось. все старьё остальное как минимум 10 летней давности. я просто в этой битве принимал некоторое участие...idle0 wrote: 14 Nov 2021 19:25 Recent Intel processors include a constant rate TSC (identified by the kern.timecounter.invariant_tsc sysctl on FreeBSD or by the "constant_tsc"
Интервью: Интересные вопросы
-
- Уже с Приветом
- Posts: 2846
- Joined: 28 Jun 2000 09:01
- Location: Milwaukee, WI
Re: Интервью: Интересные вопросы
moria# show running-config
-
- Уже с Приветом
- Posts: 4195
- Joined: 27 Apr 2011 03:43
- Location: Сергели ->Chicago
Re: Интервью: Интересные вопросы
UNIX System Administrator который пишет программы? Интересно где такие мастодонты требуются.
я думал уже все кто умеет кодить превратились в девопсов а кто не умеет в клауд архитекторов.
-
- Уже с Приветом
- Posts: 19935
- Joined: 30 Aug 2000 09:01
- Location: WA
Re: Интервью: Интересные вопросы
Скажите сразу, если прилетит interrupt - это будет context switch или нет? И повлияет ли это на время?Andriy777 wrote: 14 Nov 2021 18:32 Если взять цикл от 0 до Х. Так, чтобы выполнялся несколько секунд. Не трогать память. Минимальные инструкции инкремента и сравнения с Х. Предположим он бежит время T. Если другие процессы программу не прерывают, то она будет бежать на одном ядре. Дать программе приоритет выше обычного и тогда она будет прерываться меньше.
-
- Уже с Приветом
- Posts: 64875
- Joined: 12 Jul 2002 16:38
- Location: г.Москва, ул. Б. Лубянка, д.2
-
- Уже с Приветом
- Posts: 2846
- Joined: 28 Jun 2000 09:01
- Location: Milwaukee, WI
Re: Интервью: Интересные вопросы
А есть ли какое-то прерывание которое работает как NOP?
moria# show running-config
-
- Уже с Приветом
- Posts: 1486
- Joined: 28 Jan 2002 10:01
Re: Интервью: Интересные вопросы
Память мне говорит, что даже сам context switch сделан на interrupt-е определенного типа. Т.е. если во время моего теста не двигать мышью, не лезть в интернет и пр., применить максимум усилий к уменьшению этих прерываний от периферии, то есть надежда, что останутся в большинстве только те прерывания, которые делают эти context переходы.uncle_Pasha wrote: 16 Nov 2021 03:17Скажите сразу, если прилетит interrupt - это будет context switch или нет? И повлияет ли это на время?Andriy777 wrote: 14 Nov 2021 18:32 Если взять цикл от 0 до Х. Так, чтобы выполнялся несколько секунд. Не трогать память. Минимальные инструкции инкремента и сравнения с Х. Предположим он бежит время T. Если другие процессы программу не прерывают, то она будет бежать на одном ядре. Дать программе приоритет выше обычного и тогда она будет прерываться меньше.
Предпшоложим, что уменьшили другие прерывания. Метод посчитает цены всего, что входит в context switch. Т.е. сам interrupt, плюс вся байда для согранения регистров и всего, что нужно для вышибания одного потока и восстановление другого потока на определенное ядро процессора.
Естесственно будет погрешность. Погрешность можно определить и вычесть. Например, при первом запуске с N threads, при 2N threads, при 4N threads можно ожидать, что остальные прерывания от периферии идут с такой же частотой как они были при N-запуске. И прикинуть формулы избавления.
Еще сами прерывания могут быть очень быстрыми и они что-нибудь добавят в queue. А само действие должно будет делаться на потоке с нормальным приоритетом. А мы, ведь, свой приоритет повысим. Может, цена ненужных прерываний и уменьшится.
Я про эту проблему подумал тогда 10 сек и сейчас еще 10 сек. Дольше печатать. Сейчас, извините, бегу в качалку. Мозги настроены на другое.
В интернет за помощью не лез и никаких Stack Overflow не читал. Может, как на Windows, так и на Linux есть средства поточнее. Скорее всего, есть какие-нибудь статистики в самом ядре и их можно получить.
-
- Уже с Приветом
- Posts: 4195
- Joined: 27 Apr 2011 03:43
- Location: Сергели ->Chicago
Re: Интервью: Интересные вопросы
это все очень интересно но непонятно нафига это нужно UNIX System Administrator?Andriy777 wrote: 16 Nov 2021 04:42 Естесственно будет погрешность. Погрешность можно определить и вычесть. Например, при первом запуске с N threads, при 2N threads, при 4N threads можно ожидать, что остальные прерывания от периферии идут с такой же частотой как они были при N-запуске. И прикинуть формулы избавления.
я так понимаю ожидалось решение типа
Code: Select all
find /var/www/my_website -type f -exec chmod 0644 {} \;
-
- Уже с Приветом
- Posts: 19935
- Joined: 30 Aug 2000 09:01
- Location: WA
Re: Интервью: Интересные вопросы
Часы тоже отключить?Andriy777 wrote: 16 Nov 2021 04:42 если во время моего теста не двигать мышью, не лезть в интернет и пр., применить максимум усилий к уменьшению этих прерываний от периферии
-
- Уже с Приветом
- Posts: 3175
- Joined: 17 May 2007 14:07
Re: Интервью: Интересные вопросы
Вопрос дурной ибо для ответа нужно знать ещё какой scheduler используется. В кернеле их несколько 

-
- Уже с Приветом
- Posts: 2846
- Joined: 28 Jun 2000 09:01
- Location: Milwaukee, WI
Re: Интервью: Интересные вопросы
Ну время то замерить можно при любом, нет?kostik78 wrote: 16 Nov 2021 06:54 Вопрос дурной ибо для ответа нужно знать ещё какой scheduler используется. В кернеле их несколько![]()
moria# show running-config
-
- Уже с Приветом
- Posts: 2846
- Joined: 28 Jun 2000 09:01
- Location: Milwaukee, WI
Re: Интервью: Интересные вопросы
Не думайте о UNIX System Administrator, это не важноvalchkou wrote: 16 Nov 2021 06:14это все очень интересно но непонятно нафига это нужно UNIX System Administrator?Andriy777 wrote: 16 Nov 2021 04:42 Естесственно будет погрешность. Погрешность можно определить и вычесть. Например, при первом запуске с N threads, при 2N threads, при 4N threads можно ожидать, что остальные прерывания от периферии идут с такой же частотой как они были при N-запуске. И прикинуть формулы избавления.
я так понимаю ожидалось решение типаCode: Select all
find /var/www/my_website -type f -exec chmod 0644 {} \;
moria# show running-config
-
- Уже с Приветом
- Posts: 3175
- Joined: 17 May 2007 14:07
Re: Интервью: Интересные вопросы
Замерить нельзя - можно посчитать примерно зная частоту процессора, тип scheduler и скорость second cache. Все остальное - гадание на кофейной гуще. В кернел дебаг тулкит есть модуль на эту тему. Сам я на эту тему лет 8-9 не копался правда
-
- Уже с Приветом
- Posts: 3175
- Joined: 17 May 2007 14:07
Re: Интервью: Интересные вопросы
Это читали https://eli.thegreenplace.net/2018/meas ... x-threads/ ?
Глянул по диагонали - выглядит на правду
Глянул по диагонали - выглядит на правду
-
- Уже с Приветом
- Posts: 1486
- Joined: 28 Jan 2002 10:01
Re: Интервью: Интересные вопросы
Я со временем начинаю понимать, что автор как-то не так понял вопрос. Если это Линукс, можно ли посмотреть исходный код этого перехода? Возможно, там сотня простейших инструкций и можно сложить их стоимость в тактах процессора. Потом по тактовой частоте посчитать. Это если операционка сама не дает статистику.uncle_Pasha wrote: 16 Nov 2021 06:42Часы тоже отключить?Andriy777 wrote: 16 Nov 2021 04:42 если во время моего теста не двигать мышью, не лезть в интернет и пр., применить максимум усилий к уменьшению этих прерываний от периферии
Но, вот даже в моей попытке померять, я избегал память. Т.е. для алгоритмов, которые чисто выполняют инструкции, стоимость этих контекст переходов мизерная. 20 миллисекунд пробега против сотни инструкций с 2Ггц частотой. Контекст переходы убивают алгоритмы, которые за время простоя потока еще и потеряли свои данные в CPU кешах. Т.е. стоимость переходов зависит от конкретной ситуации. И для администратора, наверное, задача была узнать с помощью всяких инструментов - много ли таких переходов по сравнению со статистически-нормальной, когда процессы используют thread-pool и минимизируют переходы. Если много, то убирать лишние процессы.
-
- Уже с Приветом
- Posts: 2761
- Joined: 11 Jul 2015 19:01
- Location: Chicago
Re: Интервью: Интересные вопросы
Ох брат, нынче хоть и нехватка спецов но особенно калифорнийские компании идут кто на что горазд. Например на полном серьезе спрашивают на позицию мануал qa задачи с литкод.