• Что выбрать для параллельных вычислений на GPU с большой точностью?

    @rPman
    К сожалению оценка будет сильно привязана к железу, а помятую о ситуации на рынке, переставшим быть глобальным, еще и сильно будет зависеть от стоимости используемого железа.

    Если гуглить, обнаруживается достаточно старая статья dwave по которой в пределах одного nvidia устройства разница в производительности (там считали кубиты, а там как раз математика непростая, комплексные числа и т.п.) достигала от 13% до 60% в пользу cuda, что логично. Но статья 14-летней давности, с тех пор и llvm подросло, и amd на рынок взошла как следует.

    Допускаю что и в современных реалиях cuda будет работать быстрее за счет каких-нибудь оптимизаций или если найдешь уже вручную оптимизированную библиотеку под твою задачу, но opencl не привяжет твое решение гвоздями к значительно подорожавшим nvidia железкам (если сравнивать железо от разных производителей с одной ценой, скорость у amd может оказаться выше)

    но не на много.
    Ответ написан
  • Что случилось с интерфейсом Ютуба?

    @rPman
    Гугл поддался трендам, теперь за разработку отвечают не специалисты по юзабюилити а классические неадекваты (не понимаю, где их учат, потому что это массовое явление).

    Новую версию выкатывают пользователям не сразу а постепенно, это уже не первый месяц так.
    Ответ написан
    1 комментарий
  • Как найти источник данных этого сайта?

    @rPman
    Открываешь страницу, затем консоль разработчика F12, вкладка сеть, затем обновить страницу, затем во вкладке сеть нажимаешь кнопку "лупа" справа от "поиск url", затем вставляешь в поле поиска ресурсов снизу строку из данных, источник которых ты ищешь, например заголовок "Zentrumsnähe - Wohnen und Arbeiten auf 6 Zimmer - frisch renoviert" и получаешь две ссылки источника данных:
    https://homepagemodul.immowelt.de/list/api/list/?callback=listcallback&guid=b2436f43607c49f49b3e1135fe8f33d1&area=&eType=-1&eCat=-1&geoid=-1&livingarea=&page=1&price=&rentfactor=&room=&squareprice=&windowarea=&stype=0&_=1719720028049
    https://homepagemodul.immowelt.de/list/api/list/?callback=listcallback&guid=b2436f43607c49f49b3e1135fe8f33d1&area=&eType=-1&eCat=-1&geoid=-1&livingarea=&page=1&price=&rentfactor=&room=&squareprice=&windowarea=&stype=0&_=1719720028050

    Запрос нужно будет повторять максимально точно, с заголовками, и универсально это потребует реверсинжеринг кода сайта (например бакэнд может запрещать запрос разных данных с тем же хешем в url, а получение хеша - суть обфусцированного кода на javascript).
    Ответ написан
    2 комментария
  • Существует ли Шазам для вещей?

    @rPman
    Только крупные компании, типа гугл, Майкрософт bing, или Яндекс внедряют поиск в интернете по похожему изображению
    Никто из них не представил удобного api что бы делать поиск по своим базам или хотя бы тематическим.

    Свое сделать можно, но адекватное качество будет дано высокими затратами.
    Ответ написан
  • Почему оперативная память так странно работает?

    @rPman
    в виндоус написано: оперативная память: 6 Гб (доступно 2гб).
    так бывает если архитектура windows 32-битная. В этом случае будет доступно всего 4гб, но почти гигабайт адресного пространства уходит на нужды видеокарты и других устройств, а ещё гигабайт на нужды ОС, Поэтому 2гб доступно.

    Понять битность системы можно из системных настроек (быстро отправить нажав win+pause).
    Ответ написан
    1 комментарий
  • Как безопасно заливать файлы на свой сервер с других компов извне?

    @rPman
    Достаточно открыть ssh доступ (можно сменить порт с дефолтного 22 на что то другое, меньше будут беспокоить сканеры ботов), все остальное (большая часть инструментов) будут работать через него.

    scp - штатный от ssh, возможности как у обычного cp, не возобновляет прерванное копирование
    rsync - умеет работать через ssh, ключ --partial автоматически дозагрузит прерванное копирование, простой скрипт будет перезапускать процесс копирования пока он не завешится корректно
    while ! rsync -avz --partial --progress --inplace --append-verify --rsh=ssh /путь/к/локальному/файлу пользователь@удаленный_хост:/путь/к/удаленному/файлу; do
      echo "Переподключение через 10 секунд..."
      sleep 10
    done
    Ответ написан
    Комментировать
  • Какая есть хорошая программа для переноса всей информации и настроек на новый смартфон?

    @rPman
    с 2013 года гугл удалил поддержку резервного копирования (точнее восстановления этой копии) локально специально и отказывается его чинить. Оставил только облачное копирование, которое корректно работает наверное только с google pixel и samsung-ами. Китайские аппараты используют свой механизм резервного копирования и восстановления, возможно с использованием штатного облачного гугловского (там есть для этого api).

    Для переноса настроек необходимо на новом смартфоне, во время настройки своего аккаунта, указать что производится перенос данных с другого смартфона, он проведет процедуру аутентификации по пинкоду на обоих устройствах (должен быть включен wifi и кажется bluetooth). Оба смартфона должны быть включены.
    При переносе данных между смартфонами одного вендора проблем быть не должно (за исключением случаев когда переносятся с новой версии ОС на старую, но тут гарантий не будет ни у кого).

    p.s. При копировании в лоб, будут скопированы старые версии приложений, которые вместо выпуска обновлений для них, разработаны как новые, т.е. если ВСЕ переносить, то на новом устройстве будет много нерабочего мусора
    Ответ написан
    Комментировать
  • Как решить проблему с загрузкой ubuntu?

    @rPman
    acpi ошибки - это обычно не полная поддержка драйверами подсистемы управления питанием (и много еще чем), обычно дело - производитель не удосужится потратить считанные десятки человекочасов на коммит решения в ядро.

    Если выделить текст ошибки, нажать в браузере на выделенном тексте правую кнопку мыши и выбрать в меню - искать в интернете, то первым же результатом будет вот это решение
    Ответ написан
  • Почему иногда для получения данных с сервера используется POST, а не GET?

    @rPman
    Выбор типа http запроса get/post/put/delete это из http rest философии, которой мало кто в принципе пользуется и для простоты, разделяют get для получения ресурсов а post все что угодно, начиная с создания или к примеру поиска.

    Обычно разработчикам тупо лень реализовывать что то сложнее и все складывают в POST. То что там пусто в полях, ничего страшного, это тоже сигнал, включая использование значений по умолчанию.

    Единственное что можно помнить, что поисковые системы, точнее их роботы, стараются использовать POST запросы с осторожностью (или вообще не использовать), только чтобы изучать поисковые формы, и то, только для популярных фреймворков, чтобы минимально воздействовать на исследуемый ресурс (отлично помню байку про offline browser, пользователь попросил загрузить сайт, под своим логином, и он добросовестно прошелся по всем страницам и пронажимал на все кнопки, включая delete, удалив весь контент этого пользователя).
    Ответ написан
    Комментировать
  • VirtualBox. Подтормаживает изображение в Youtube?

    @rPman
    Потому что полноценной поддержки видеоускорителя в virtualbox нет, есть неофициальная, которая в 10-ой windows уже сломана, да и раньше работала со сбоями.
    Ответ написан
    Комментировать
  • Есть вариант каким-то образом использовать западные платежные системы?

    @rPman
    Любые такие действия вынудят вас обманывать зарубежную платежную систему, по вопросам кто вы и где вы живете.

    Крупные платежные системы собаку съели на выявлении этого обмана. Мало того, поняв, что вы обманываете, платежная система может продолжать позволять вам пользоваться ими, но уже с целью сбора информации о вас и ваших контрагентов, как часть большой машины по борьбе с отмыванием денег или поиском преступников разного толка. В конечном счете, собрав о вас достаточно информации, платежные система отбирают у вас остаток на счете (логично что делать они это будут в момент наиболее выгодный для них) и сделать с этим вы уже ничего скорее всего не сможете.
    Ответ написан
  • Получение статьи и комментариев к ней: одним запросом или двумя?

    @rPman
    Как это ни странно, но несколько запросов вместо одного большого, хотя и отработают в результате дольше, но повышают эффективность утилизации ресурсов и увеличивают способность базы данных к масштабированию, в т.ч. за счет нескольких серверов. Т.е. при одних и тех же ресурсах (процессор/память/диск), если сравнивать две такие разные реализации, в общем сумеют обработать больше запросов (итоговых страниц) та где много отдельных запросов.

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

    @rPman
    Можно поставить настройки роутинга и маршрутизации, не трогая фаервол.
    Нужно отключить автоматическую настройку ip адреса, прописав его вручную (уменьшить диапазон dhcp на роутере и использовать адрес из освободившегося) и прописав неправильный шлюз по умолчанию, например эту же машину.

    Интернет перестанет работать. Затем добавить route для vpn сервера по его адресу или подсетью, указав верный шлюз
    route add ip_адресvpn mask 255.255.255.255
     ip_твой_правильный_шлюз

    Таким образом единственно доступный в интернете сервер будет vpn.

    При подключении к vpn, будет добавлена маршруты через него, а при отключении вернутся эти неправильные настройки и интернет отключился.

    Нормальные роутера позволяют настройку неправильного шлюза провести через dhcp сервер
    Ответ написан
    1 комментарий
  • Можно ли гарантировать надежность снапшота?

    @rPman
    Создание снапшота - атомарная операция (lvm/btrfs/zfs), с точки зрения восстановления базы данных из этого снапшота, это будет то же самое, как если бы вы нажали reset на компьютере, даже лучше - сняли все процессы сервера баз данных с помощью жесткого kill -9 $pid (SIGKILL, его не отловить) ведь записи на диск не прервутся.
    ВАЖНО, если база данных находится на одном томе! невозможно создать атомарно снапшот на нескольких томах. Вариант с запуском всей системы в виртуальной машине и созданием снапшотов ее средствами не рассматриваем, такой конфиг абсурден с точки зрения производительности.

    Базы данных очень качественно следят за консистентностью записи, удаляют данные из лога только после того как завершат запись на диск, т.е. транзакция не завершится, пока данные не будут записаны окончательно. Это значит данные не будут повреждены.

    С некоторой вероятностью, базу данных придется поднимать вручную, т.е. потребуется проверка целостности, например логи будут повреждены и их нужно будет удалять и т.п. Но обычно postgres справляется с аварийным выключением неплохо.

    p.s. но я бы не рекомендовал такой способ все равно, особенно на постоянной основе.
    Для создания резервной копии на живой базе я рекомендую использовать вторую машину, на которую настроена репликация базы. В этом случае эту вторую базу можно остановить, снять снапшот, возобновить работу (чтобы репликация догнала master - меньше нагрузка на диски, меньше оперативной памяти и допустим слабый процессор) а снапшот спокойно копировать, не опасаясь каких-либо проблем.
    Данный способ нужно использовать на постоянной основе (мало того, требования к backup slave серверу значительно ниже чем рабочему master), и сам процесс создания копии никак не повлияет на работу исходной базы, когда как использование оригинальной базы, даже со снапшотом, значительно понизит ее производительность, так как копирование сильно нагружает дисковую подсистему.
    Ответ написан
    3 комментария
  • Как сделать локальный бэкап VDS сервера Ubuntu + Docker?

    @rPman
    Да это будет работать (linux вообще универсальная ОС, лишь бы архитектура x86/x64/.. процессора подходила, исключение - gentoo, там привязка может быть буквально к модели процессора), возможно потребуются телодвижения для настройки загрузчика и переустановки ядра (linux-image-...), скорее всего, если аппаратный конфиг будет похож (например и там и там одни и те же диски, не по размеру а по сути, например один диск на ОС а другие на данные базы и файлы веб сервера или образы docker), то все заведется без проблем, я так переносил несколько раз очень странные конфиги, дублируя на целевой машине даже uuid разделов и lvm томов.

    И нет, лучше так не делать, скорее всего вместе с ОС там будут установлены утилиты от провайдера, для управления этой виртуалкой, и они скорее всего будут плохо работать у другого провайдера (по уму так могут не делать, и провайдеру достаточно ssh ключей).

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

    Если документации нет, то придется реверсинженерить конфигруационные файлы nginx и php, чтобы понять, в каких каталогах хранятся файлы проекта, но остаются конфигурационные файлы сервера, настройки сети, файловой системы, снапшотов или томов (иногда они чувствительно настроены для проекта). Базы данных тоже нужно копировать с осторожностью, есть сами базы, они копируются штатными инструментами, а есть пользователи и права доступа, есть конфиги самого сервера баз данных (кстати они могут быть тоже привязаны к серверу, например к объему памяти) или к примеру настройки репликации.

    И да, есть еще образы docker, хорошо их можно копировать не смотря на то что внутри (это одна из главных фич контейнеризации) - docker save и docker load. Осторожно, сетевой конфиг сервера (а именно имена сетевых интерфейсов и наличие bridge) в данном случае может потребовать дополнительных шевелений.

    p.s. Есть способ облегчить реверсинженеринг:
    В зависимости от используемого пакетного менеджера, можно получить список установленных пакетов, затем сдублировать установку простым запуском (для debian based дистрибутивов) apt install список_имен_пакетов_с_версиями или dpkg -i имя_файла.deb, если предварительно их скачать из репозитория apt download в отдельном каталоге с помощью chroot.
    А затем банально сравнить списки файлов на оригинальной установке и этой фиктивной, все различия можно автоматически скопировать (новые, измененные и удаленные файлы). Я делал очень просто - формировал список файлов, в виде полный_путь_имя_файла размер дата_модификации (можно вместо размера и даты хеш md5 но это дольше и особого смысла не имеет, если нет злоумышленника, стремящегося помешать этому анализу) для оригинального каталога и сравниваемого, полученные файлы сортировал утилитой sort и сравнивал diff, полученный файл можно смотреть глазами а можно написать утилиту которая все будет копировать сама.
    Ответ написан
    Комментировать
  • У меня скрипт для рассылки друзьям на Python, хочу отправлять сообщения по номеру телефона, но получается только по username, как решить?

    @rPman
    По номеру телефона можно общаться только если вы друг у друга в контактах телефона.

    Иначе - ты бы перебирал номера телефонов (собственно одно время так и делали, добавляя по 10к в контакты себе) и спамил бы спамил, хорошо так не получится.
    Ответ написан
  • Как восстановить данные с SSD диска?

    @rPman
    Железная проблема, причем это явно контроллер.
    Нести в ремонт, стоимость ремонта может быть дороже чем с hdd на порядок, но хотя бы на диагностику отнесите, вполне возможно что данные вытянуть получится (готовьте диск, любой, на который вам восстановят данные)
    Ответ написан
    Комментировать
  • Запуск Windows от ПК на Limbo PC Emulator?

    @rPman
    первая же статья из гугла на 4pda
    https://4pda.to/forum/dl/post/19313973/Screenshot_...
    В limbo все гораздо проще. Надо просто их выбрать как на скриншоте. Расположение файлов на ваше усмотрение.
    Ответ написан
    Комментировать
  • Может ли провайдер заблокировать 80 порт на доступ извне?

    @rPman
    у меня ростелеком на белом, специально купленном ip, в разное время блокировал входящие на портах ниже 4000, я даже пытаться перестал, ssh например не работал никогда, а вот http по 80 то работает то нет.

    Кстати, возможна ситуация, когда блокировка происходит скорее всего не на провайдере где стоит сервер, а у провайдера на клиенте, хз по какой логике. Например помню с tele2 мобильного интернет не мог подключиться ни по каким портам, при этом в то же время с проводного провайдера, тоже в том же городе, связь была.
    Ответ написан
    Комментировать
  • Какая версия PostgreSQL-ODBC-драйвера подойдет для Windows 7?

    @rPman
    тут смотрел?
    https://www.postgresql.org/ftp/odbc/releases/

    Если приложение x86 а ОС x64 то посмотри как это тут решили (внизу статьи), само собой подправь название dll под нужную
    Ответ написан