Size: a a a

2020 April 15

I

ID in Linux Чат
Не читал его, но конфиг в и3 определяет только работу с окнами и их отображение (расположение, настройки, запуск и тд)
источник

I

ID in Linux Чат
Ты рискуешь перезапускать его, не изучив сам конфиг
источник

I

ID in Linux Чат
Как исход не сможешь запустить терминал
источник

E

Earl Sweetshirt in Linux Чат
KEK
а как i3 перезагрузть?
Смотри в ~/.config/i3/config там все сочетания клавиш заданы
источник

I

ID in Linux Чат
Рабочая клавиша+shift+r чаще всего
источник

K

KEK in Linux Чат
Earl Sweetshirt
Смотри в ~/.config/i3/config там все сочетания клавиш заданы
это я уже понял, у меня куча ошибок
источник

E

Earl Sweetshirt in Linux Чат
KEK
это я уже понял, у меня куча ошибок
После того как ты внёс исправления?
источник

K

KEK in Linux Чат
Earl Sweetshirt
После того как ты внёс исправления?
нет, я просто скопировал и вставил
источник

E

Earl Sweetshirt in Linux Чат
KEK
нет, я просто скопировал и вставил
Откуда что вставил?
источник

K

KEK in Linux Чат
источник

E

Earl Sweetshirt in Linux Чат
Возможно у тебя не установлены те пакеты которые у этого человека в конфиге
источник

K

KEK in Linux Чат
((
источник

С

Сергей in Linux Чат
Earl Sweetshirt
Слушай, но вот например я ставлю gcc -j 2 и htop показывает на 2 ядра нагрузку, если 3 то 3 и тд.
Хз. Если в коде gcc не прописано создание нескольких потоков для определённых случаев и, более того, если в этом нет необходимости (например, компиляция одного исходника), зачем ему несколько потоков- непонятно. Может, холостые какие.
источник

E

Earl Sweetshirt in Linux Чат
Не копируй бездумно то
источник

E

Earl Sweetshirt in Linux Чат
Сергей
Хз. Если в коде gcc не прописано создание нескольких потоков для определённых случаев и, более того, если в этом нет необходимости (например, компиляция одного исходника), зачем ему несколько потоков- непонятно. Может, холостые какие.
Ну ты попробуй параметр -j он реально ускоряет
источник

С

Сергей in Linux Чат
Earl Sweetshirt
Ну ты попробуй параметр -j он реально ускоряет
А чё ты компилишь?
источник

E

Earl Sweetshirt in Linux Чат
Сергей
А чё ты компилишь?
Да бывает по разному. Намедни вот cool-retro-term компилил
источник

E

Earl Sweetshirt in Linux Чат
make -j 4 тоже канает
источник

С

Сергей in Linux Чат
Earl Sweetshirt
Да бывает по разному. Намедни вот cool-retro-term компилил
Если -j отвечает за создание потоков- ну значит, так оно и есть. Значит, может, такое быть но не до бесконечности. Ещё раз- одно ядро- один поток. Если у тебя два ядра, то два потока. Три уже бесполезно делать.
источник

I

ID in Linux Чат
Сергей
Я так понимаю, про многопоточность ты ничего не знаешь. Упрощённо: одно ядро- один поток, это классика. Я читал какую-то херь, где ядро может создавать два и боле потоков, если углубляться, то речь о названиях пойдёт. Итак, 18 ядер- 18 потоков. Допустим. Во-первых, чтобы действительно создать 18 потоков, их создание должно быть прописано  программе, то есть:
gcc блаблабла

должен сам по себе (то есть это должно быть прописано в его коде) создавать 18 (или несколько) потоков. Но процесс gcc не порождает несколько потоков, а делает всё одним потоком, хотя смысл в создании нескольких потоков есть. Например, если  у тебя несколько исходников, и из каждого делается объектный файл, независимо друг от друга, то можно создать несколько потоков, но, наверное, фактически всё сведётся к запуску нескольких экземляров gcc (почему нет?).
Почему это распространено не так, как хотелось бы. Дело в том, что если распараллелить процесс, например на два потока никакого двукратного выигрыша в скорости не будет. А потому, что потоки имеют разделяемые ресурсы (оперативную память ту же самую. Это по минимуму), и нужно, чтобы они друг другу не мешали. Прикинь, чё будет, если они будет одновременно писать в одну и ту же область оперативной памяти- напомню, они друг о друге ничего не знают, работа полностью независима. Чтобы катавасии не случилось, существуют специальные программы-планировщики потоков. Регуляторы разделяемых ресурсов, так скажем, и на их долю работы отводится до хрена процессороного времени. Во сколько реально увеличивается скорость вычислений- существуют специальные тесты. Если два ядра вместо одного, где-то в 1,3 раза увеличивается. Ожидаемая отдача там, где у потоков нет общих ресурсов. Например, шахматная задача. Один поток просчитывает один вариант, другой другой. Так это проще на двух компах запустить и всё.
Половина всего не так. В зависимости от решаемой задачи потоки могут дать разный прирост. И одно физическое ядро может отвечать за несколько потоков. Но потоки ядра - это не одно и то же, что и потоки процессора. Запустив "Диспетчер задач" на 10 ты в этом легко убедишься
Каждый процесс - это один главный поток, который в свою очередь можно разделить на несколько потоков. В зависимости от языка программирования это делается по разному. В конечном итоге твоя система опрашивает каждый из потоков и отдает управление от какого то потока системы ему на определенное время
источник