• Почему не научились ещё одно ядро разгонять до высоких частот?

    vabka
    @vabka
    Токсичный шарпист
    Майнкрафт это одноядерная игра

    Ошибаешься. Сам прямо сейчас в него играю и у меня прекрасно сжираются все 8/16 ядер процессора.
    Сервер майнкрафта также вполне успешно сжирал все ядра сервера, на котором я его запускал.

    но и другие игровые сервера тоже страдают этим

    Тоже ошибаешься.

    так почему intel не сделала ещё такой процессор где высокая частота вкупе с современной архитектурой?

    Потому что спроса блин нет - для всех задач сейчас нужно не менее двух ядер.
    Хочешь разогнать одно ядро? Да пожалуйста - отключаешь все ядра кроме одного в биосе и гони хоть до 6ггц до такого порядка Intel вполне успешно сам разгоняется через turbo boost. А экстремалы гонят и дальше, хоть и под азотом и не все экземпляры.

    Ограничение частот в физике, а не в каких-то волшебных оптимизациях. Если обратишь внимание - не существует чипов, которые работают на той частоте, которую ты хочешь в принципе.

    Вот, пожалуйста

    Покажи пальцем, где тут нагрузка на одно ядро
    64a72cd1383d7104481109.png
    Ответ написан
    1 комментарий
  • Почему не научились ещё одно ядро разгонять до высоких частот?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Этот вопрос нужно адресовать к современной физике. Сделать такой процессор не очень сложно.
    Но сложно сделать его потребительски привлекательным. Все делатели процессоров в современном
    мире бьются за энергоэффективность. А с повышением частоты там просиходит (пускай физики меня
    поправят) квадратичное увеличение потребляемой мощности (к коэффциентиком). Вот сколько именно
    ватт я сейчас не скажу но величина будет неприятная. Тоесть 8 ГГц процессор будет греться как кофейник
    и будет потреблять более чем в 4 раза если сравнивать его с 2Ггц ядром.

    Еще я-бы рассмотрел такой вариант как влияние на здоровье человека. Выж понимете да. Вся современная
    радиопередающая техника (мобилы, Wi-Fi, Bluetooth) со всех сторон зажаты медицинскими нормами
    всяких международных контролирующих организаций. И не дай бох хоть одна организация докажет
    что вероятность поймать рак мозга растет там на 5% от такого процессора - загнобят санкциями.

    По поводу мегафлопов. Фактически производительность техно-стека (Процессор-Память-I/O)
    зависит не только от проца но и от всех устройств которые в стеке. И даже работая на 8ГГц
    ты скорее всего не получишь желаемого роста скорости майнкрафта на переходе от 4 х 2 Ггц просто по той
    причине что кеш и память и диск остались ровно теже самые.

    Да и вообще. Эпоха гигантизма в процессорах прошла. Щас все двигаются к узкой специализации
    CPU/GPU/TPU и к интернету вещей. И майнкрафт здесь никак не будет главным регулятором стратегии.
    Уж извини. Водное охлаждение тоже вещь такая себе. Узкий сегмент энтузиастов. Обычным людам это
    так же не надо как и квантовый комп.
    Ответ написан
    8 комментариев
  • Как из браузера выгрузить всю страницу целиком?

    hint000
    @hint000
    у админа три руки
    Затруднение связано с тем, что часть контента может генерироваться при исполнении JavaScript. И защита от копирования\сохранения реализована через JavaScript. Если отключить выполнение скриптов, то защита не будет работать, но тогда и часть контента не будет сгенерирована. Так что уже требуется разбираться в коде и выборочно отключать конкретные куски кода. И даже это не гарантирует успех во всех случаях. Если разработчик сильно заморочился на защите (такое встречается редко), то вам придётся ещё сильнее заморочиться на обходе защиты. Если нужен только контент, видимый глазом, то иногда проще будет сделать скриншот и прогнать его через OCR, чем тратить время на разборки с кодом.
    Ответ написан
    Комментировать
  • Где учить алгоритмы и структуры данных?

    includedlibrary
    @includedlibrary
    Вот хорошая книга Алгоритмы: построение и анализ
    "Грокаем алгоритмы" слишком поверхностная книга, читать её не имеет никакого смысла.
    Ответ написан
    3 комментария
  • Задача с перестановкой спичек?

    Vindicar
    @Vindicar
    RTFM!
    Шаг 1. Опиши каждую цифру числа как бинарную строку, где каждому биту соответствует спичка в цифре. 1 - спичка есть, 0 - нет. Тебе понадобится 7 бит на цифру, можно округлить до 8 и считать 8й бит всегда 0. Это, по сути, семисегментный индикатор.
    Шаг 2. Научись преобразовывать число из нескольких цифр в длинную бинарную строку. Если гарантируется, что число 4значное или меньше, то эта строка будет выражена как 4 байтовое беззнаковое целое.
    Шаг 3. Если сделать XOR между двумя такими строками, то значение 1 примут только биты, соответствующие пропавшим/появившимся спичкам. Посчитать число единичных бит нетрудно.
    Шаг 4. Перебирай числа по возрастанию, для очередного числа построй битовую строку. Если число единичных бит в строках равно (для их "записи" используется равное число спичек), а число единичных бит в XOR равно четырём (две спички переложили = две спички пропали + две появились), число подходит.

    За скорость, правда, не ручаюсь. Но есть возможности по оптимизации подсчёта единичных бит, и по оптимизации перебора (перебирать не все числа, а только те, которые можно выразить тем же числом спичек).
    Ответ написан
  • Почему возникает такая проблема с динамическим массивом (Язык Си)?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    ошибка возникает на моменте сдвига элементов. Как ее исправить?
    data = (Student*)realloc(data, count * sizeof(Student));
    
        for (int i = count; i > offset; i--)
        {
            data[i] = data[i - 1];
        }

    Этот код пишет за конец массива, потому что если в массиве count элементов, то последний имеет индекс count - 1. Этот цикл должен быть таким: for (int i = count - 1; i > offset; i--)
    Ответ написан
    Комментировать
  • Как "убить" и закрыть tmux через 10 минут?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Есть утилита timeout, как раз для убийства через XX времени.
    Ответ написан
    Комментировать
  • AUX и Jack 3,5 - это одно и то же?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Не путайте тёплое с мягким.
    Jack 3.5 - это форм-фактор разъёма. Может быть стандарта TS (моно), TRS (стерео или моно+микрофон), TRRS (стерео+микрофон).
    AUX - это назначение разъёма (Auxiliary - дополнительный).
    А наушники надо подключать в разъём, предназначенный для подключения наушников. Как правило, он обозначен соответствующим знаком. На некоторых материнских платах бывают конфигурируемые разъёмы, назначение которых задаётся из панели управления звуком.
    Ответ написан
    1 комментарий
  • Вычтите числа 16 и -1 путем составления их обратных и дополнительных кодов в формате 1 байт. Как это сделать?

    Griboks
    @Griboks
    Вычитание - это инверсия + сложение. Инверсия зависит от способа хранения знака: в специальном бите или в логическом разделении множества значений пополам. В первом случае нужно просто поменять знак (побитовое не), во втором - сложить с половиной максимального значения.
    Ответ написан
    2 комментария
  • Как сделать удобный ввод пути до файла в своем Bash скрипте?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    Подстановкой по TAB занимается не ваш скрипт, это делает bash. А если быть совсем точным - bash-completion. В нем описаны для разных программ допустимые аргументы и варианты подстановок. Вам стоит разобраться в правилах написания bash-completion расширения под ваш скрипт и распространять скрипт вместе с этим расширением.
    Ответ написан
    Комментировать
  • Где найти полное руководство пользователя по Линуксу?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    полное руководство по linux - это как тёмная материя которая вроде как есть и в тоже время нету.
    гляньте по этой ссылке, думаю это самое близкое что подойдёт к вашему запросу.
    Ответ написан
    Комментировать
  • Запуск OpenVPN клиента и сервера на одной машине. Как?

    hint000
    @hint000
    у админа три руки
    На VPS я решил организовать "транзитный VPN"
    А всего-то надо было настроить на промежуточном узле DNAT через iptables. И не нужно там ни клиента, ни сервера OpenVPN.

    Update: DNAT + SNAT.
    Ответ написан
    6 комментариев
  • Fork отказывается работать. Как исправить?

    @zhum
    программист, администртор
    Если это всё в докере/lxc/итп или под systemd, то проверьте ограничение неймспейса, скорее всего именно там лимит на число fork-ов. Например, `/sys/fs/cgroup/pids/user.slice/user-1000.slice/pids.max`.
    Ответ написан
    1 комментарий
  • Зачем нужен signed в Си?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    по умолчанию int является signed

    А вот о char этого сказать нельзя, знаковость char зависит от реализации. Вдобавок, в стандарте есть следующая сноска (https://www.open-std.org/JTC1/SC22/WG14/www/docs/n... 6.2.5:15):
    Irrespective of the choice made, char is a separate type from the 
    other two and is not compatible with either.


    signed char -- это, пожалуй, единственное не вызывающее вопросов применение ключевого слова signed в C-коде написанном человеком. В остальных случаях роль signed -- чисто декоративная.
    Ответ написан
    Комментировать
  • Какие адреса из подсети 172.16.10.0 можно использовать для адресации?

    fzfx
    @fzfx
    18,5 дм
    Можно использовать адреса со 172.16.10.0 по 172.16.10.63. Потому что именно эти адреса входят в подсеть 172.16.10.0/26. Другие адреса в эту подсеть не входят. При наложении маски подсети на адрес подсети будет видно, какие биты адреса подсети относятся к адресу подсети, а какие к адресу хоста в подсети.
    Адрес 172.16.10.0 при этом является адресом самой подсети, адрес 172.16.10.63 - широковещательный адрес подсети, назначать эти два адреса машинам в этой подсети нельзя. Остальные адреса диапазона доступны для назначения машинам в этой подсети.
    Ответ написан
    1 комментарий
  • Как записать iso образ на флешку из-под Linux Manjaro?

    @rPman
    Если флешка и машина, на которой она будет использоваться, работает в режиме EFI, то достаточно отформатировать флешку как fat32 и распаковать на нее содержимое iso, открыв его как архив. Все делается из GUI в linux штатными инструментами, например работа с разделами, форматирование - gparted/kde patitionmanager

    Если система на флешке не умеет EFI или загружаться это будет на машине с legacy boot mbr, то есть лайфхак (я встречал только одну очень старую машину где это не сработало, речь идет о 10-15-летней материнке), просто скопировать посекторно содержимое iso на устройство, к сожалению gui для этого под linux нет (точнее есть что то типа gdiskdump но не в репозитариях, да и зачем такую простую задачу усложнять), для этого используют dd, причем iso записывается прямо на весь диск а не раздел, пользоваться такой флешкой до переформатирования можно будет только для чтения этого образа.
    Ответ написан
    2 комментария
  • Как при http запросе curl не выводить ничего в консоль?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    как выполнить запрос и не выводить ничего в консоль?

    Если результат запроса надо сохранить -- то открыть файл на запись и передать полученный указатель в CURLOPT_WRITEDATA. Если сохранять не надо -- установить функцию, которая будет игнорировать передаваемые ей для записи данные в CURLOPT_WRITEFUNCTION.
    Ответ написан
    Комментировать
  • Как узнать максимальный размер данных доступных для записи в сокет?

    XXXXPro
    @XXXXPro
    Fullstack Web developer
    В Linux напрямую — никак. Можно получить размер буфера через getsockopt и получить количество неотправленных данных через ioctl(socket,SIOCOUTQ), а потом вычесть одно из другого.
    Ответ написан
    Комментировать