LINUX.ORG.RU

Избранные сообщения intelfx

Импортозамещаемся #2

Форум — Talks

В продолжение этого треда
Импортозамещаемся

Были куплены, помимо основательного запаса обозреваемого там, NRK-518, NRK-373, 255-ZERO, 250 активный, и их припой (ПОС-61 с флюсом hr-500-lk).

518-ый теперь будет основным флюсом для всего вообще. Не кипит, не воняет, работает прекрасно. Реально лучший флюс, хоть под smd, хоть под bga. Сначала, пока не привык, хотел всё же консистенцию погуще, как у эрсы - флюс-крем. Достаточно иголочку потоньше, по итогу. И так даже лучше наносится. 255-ый тоже очень хороший, хотя в основном лично мне нужно поактивнее. Но у него нулевая проводимость, абсолютно. Найдёт своих потребителей в СВЧ электронике или аудио. А ещё пахнет лимоном лимоненом, как fluxplus, только послаще, как сироп из аптеки.

Вот 373-ий мне не зашёл. Несмотря на то что он должен быть, в принципе, похож, на 518, только менее активным, он не то что кипит, а пенится, как эпилептик сука. Может мне такой неудачный экземпляр попался, но всё же.


Припой. Естественно что пос61/63 и так был лучшим, но мне всегда не нравилась канифоль внутри, много говен после неё. Тут эта проблема решена. Felder также отправляется на полку.

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

Это уже взвешенное мнение после месяца использования исключительно отечественных паяльных материалов. Иншаллах.

 ,

K50
()

Что послушать из тяжелой музыки?

Форум — Talks

Что слушаете сами и можете порекомендовать для прослушивания? Конкретный жанр значения не имеет, ну кроме совсем попсы и стрёмного блека, в котором не разобрать слов и мелодию.

Ничего против «наших» не имею, но всё же лучше, если это будут зарубежные группы.

Linux тут при том, что проигрываться будет на нём.

 

Prosto_user
()

Импортозамещаемся

Форум — Talks

Поговорим о флюсах. Я уже очень долгое время использую немецкий Ersa FMKANC32, и полностью им доволен, однако он неожиданно, как приход зимы, закончился, новый я не заказал, а брать официально - я не миллиардер. Так что были куплены в ближайшем лабазе тоже именитый американский Fluxplus 612 и расово отечественный Rusflux HR-500-LK. Также в сравнении будет участвовать китайский Kingbo RMA-218.

Активность
Самый активный китаец. Американец менее, наш ещё менее. То есть для облуживания ржавых гвоздей не подойдёт. Однако это не вазелин, и его активности более чем достаточно для пайки SMD и BGA, то есть на слабоокисленных контактах.

Проводимость
Мегаомметра у меня нет, потому такие тесты не делал. Однако они есть на ютубе, и русфлюкс даже в неактивированном состоянии укладывается в ГОСТ (100 МОм). Китаец же и после активации имеет весьма высокую проводимость, особенно это будет заметно на линиях данных. Паял как-то мультиконтроллер им, курсор тачпада офигевал. Для пайки BGA использовать его нельзя категорически, только полная отмывка. Американец тут нареканий не вызывает, но его тоже желательно отмывать.

Кипучесть
Почти не кипит, даже в больших количествах. Китай, кстати, тоже не особо кипучий, а вот от флюксплюса может и микруху сдвинуть.

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

Запах
Российский вообще почти не пахнет. Америка пахнет химическим ароматизатором лимона. Мне этот запах, кстати, нравится (я токсикоман), но окружающие не в восторге. Эрса воняет химией и тухлыми носками, а кингбо как 30 эрс одновременно.

В остальных сравнениях эрса не упоминалась, поскольку примерно аналогична efd fluxplus, только менее активна.

Я сегодня отреболлил и припаял на HR-500-LK интеловский комбинированный процессор, снял и поставил на родных бессвинцовых шарах амдшный север rs880, поменял мультиконтроллер. То есть, по сути, самые сложные задачи, провода паять и канифолью можно. Впечатления отличные. С учётом того что rusflux дешевле fluxplus в 4 раза, а эрсы, если смотреть официальный ценник, в 16 (иначе в 5), а качество одинаковое по сути, то не вижу смысла платить больше. Хватит кормить Америку!

Дешевле всех, конечно, Китай. Он, можно сказать, бесплатный. Банка 100 г. стоит 370 рублей, а с каким-то купоном я её взял за 100. Для проводов и разъемов пойдёт. Для чего-то серьёзного - нет.

Закажу завтра остальной ассортимент отечественного производителя. Особенно интересен NRK-518-A, он более активен, чем обозреваемый, и работает до 350 градусов, под паяльник самое то. А этот всё же больше для бесконтактной пайки.

 , ,

K50
()

Выбор паяльной станции

Форум — Talks

Господа, посоветуйте бюджетную паяльную станцию. Фен, подставки,крепеж вот это вот всё.


Перемещено leave из linux-hardware

 ,

Deleted
()

Маршрутизация маркированных iptables пакетов.

Форум — Admin

Добрый день. Имеется роутер с 2мя сетевухами к разным провайдерам и одной в локальную сеть. Вот конфигурация сетевух

провайдер 1 (в таблицах rt_tables указан как P1):
IF1=eno33554960
IP1=192.168.5.69
GW1=192.168.5.90
NET1=192.168.5.0/24
провайдер 2 (в таблицах rt_tables указан как P2):
IF2=eno16777736
IP2=172.16.69.100
GW2=172.16.69.2
NET2=172.16.69.0/24
локальная сеть:
IF_LOCAL=eno50332184
IP_LOCAL=192.168.50.90
NET_LOCAL=192.168.50.0/24
После настройки имеем такие виды маршрутов в таблицах
[root@fedora ~]# ip route
default via 192.168.5.90 dev eno33554960 
127.0.0.0/8 dev lo  scope link 
172.16.69.0/24 dev eno16777736  scope link  src 172.16.69.100 
192.168.5.0/24 dev eno33554960  scope link  src 192.168.5.69 
192.168.50.0/24 dev eno50332184  scope link 
[root@fedora ~]# ip route show table P1
default via 192.168.5.90 dev eno33554960 
127.0.0.0/8 dev lo  scope link 
172.16.69.0/24 dev eno16777736  scope link 
192.168.5.0/24 dev eno33554960  scope link  src 192.168.5.69 
192.168.50.0/24 dev eno50332184  scope link 
[root@fedora ~]# ip route show table P2
default via 172.16.69.2 dev eno16777736 
127.0.0.0/8 dev lo  scope link 
172.16.69.0/24 dev eno16777736  scope link  src 172.16.69.100 
192.168.5.0/24 dev eno33554960  scope link 
192.168.50.0/24 dev eno50332184  scope link 
и такие правила
[root@fedora ~]# ip rule
0:	from all lookup local 
32734:	from all fwmark 0x1 lookup P1 
32735:	from all fwmark 0x2 lookup P2 
32736:	from 192.168.5.69 lookup P1 
32737:	from 172.16.69.100 lookup P2 
32766:	from all lookup main 
32767:	from all lookup default 
в iptables все открыто и настроен маскарадинг
[root@fedora ~]# iptables -vL
Chain INPUT (policy ACCEPT 429 packets, 42872 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 930 packets, 602K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 327 packets, 54592 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@fedora ~]# iptables -t nat -vL
Chain PREROUTING (policy ACCEPT 223 packets, 12249 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 198 packets, 10968 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 3 packets, 228 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 MASQUERADE  all  --  any    eno16777736  anywhere             anywhere            
   25  1363 MASQUERADE  all  --  any    eno33554960  anywhere             anywhere            
[root@fedora ~]# iptables -t mangle -vL
Chain PREROUTING (policy ACCEPT 1493 packets, 657K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 560 packets, 54913 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 930 packets, 602K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 417 packets, 63164 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 1347 packets, 665K bytes)
 pkts bytes target     prot opt in     out     source               destination         
Пакеты по маршруту по умолчанию ходят замечательно. Если какой-нибудь IP завернуть на второго провайдера через
 
[root@fedora ~]# ip rule add from 192.168.50.150 table P2
[root@fedora ~]# ip rule
0:	from all lookup local 
32733:	from 192.168.50.150 lookup P2 
32734:	from all fwmark 0x1 lookup P1 
32735:	from all fwmark 0x2 lookup P2 
32736:	from 192.168.5.69 lookup P1 
32737:	from 172.16.69.100 lookup P2 
32766:	from all lookup main 
32767:	from all lookup default 
то он на него поворачивает
 
1    <1 мс    <1 мс    <1 мс  192.168.50.90
  2     *       <1 мс    <1 мс  172.16.69.2
  3     *        *        *     Превышен интервал ожидания для запроса.
  4     1 ms    <1 мс    <1 мс  192.168.0.1
  5     4 ms     4 ms     4 ms  100.70.0.1
и т.д.
Но если попробовать маркировать пакеты через iptables
[root@fedora ~]# iptables -t mangle -A PREROUTING -s 192.168.50.150 -j MARK --set-mark 2
[root@fedora ~]# iptables -t mangle -vL
Chain PREROUTING (policy ACCEPT 82 packets, 6542 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 MARK       all  --  any    any     192.168.50.150       anywhere             MARK set 0x2

Chain INPUT (policy ACCEPT 79 packets, 6410 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 66 packets, 6568 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 66 packets, 6568 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@fedora ~]# ip rule
0:	from all lookup local 
32734:	from all fwmark 0x1 lookup P1 
32735:	from all fwmark 0x2 lookup P2 
32736:	from 192.168.5.69 lookup P1 
32737:	from 172.16.69.100 lookup P2 
32766:	from all lookup main 
32767:	from all lookup default 
то картина получается такая
 1    <1 мс    <1 мс    <1 мс  192.168.50.90
 2    <1 мс    <1 мс    <1 мс  172.16.69.2
 3     *        *        *     Превышен интервал ожидания для запроса.
 4     *        *        *     Превышен интервал ожидания для запроса.
 5     *        *        *     Превышен интервал ожидания для запроса.
 6     *        *        *     Превышен интервал ожидания для запроса.
 7     *        *        *     Превышен интервал ожидания для запроса.
Если по умолчанию поставить второго провайдера, и пакеты маркировать как 0х1, чтобы они согласно правилам поворачивали на первого, то ситуация не меняется.Что мешает маркированным пакетам вернуться? Может кто глянет свежим взглядом. ОС Fedora 23.

 ,

vit336
()

Посоветуйте осциллограф с али

Форум — Linux-hardware

Доброго времени всем! Накидайте вариантов, кто чем пользуется, расскажите, пожалуйста.

 ,

burato
()

Коллекция критики systemd 2

Форум — Talks

В этой теме я продолжу собирать ссылки на то, как systemd портит жизнь людям.

Предыдущая тема, в которой я начал это делать:

  1. Мрачная судьба Поттеринга

Добавлено.1 Поскольку тема получила резонанс то вношу предложение заменить systemd его форком.

 , ,

torvn77
()

Производительность; илитный запил оптимальных реализаций и основы матчасти.

Форум — Development

Поглядел я тут на пацанов и увидел прогресс в их глазах. Поэтому я решил вести тут свой бложик, в котором я буду толкать матчасть, разбирать/разрушать всякие мифы и легенды, а так же их обсуждать с пацанами. Банить меня не надо - тут всё будет очень культурно.

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

Изначально я хотел написать про то: что такое бесплатные вычисления на примере is_range() + сумма елементов массива, но тут выявилась смешная особенность, поэтому пока без is_range().

Начнём с простого - сумма елементов(float) массива. Как написать её быстро? Обычный крестопоц сделает так:

auto summ = accumulate(begin(vec), end(vec), 0.)

Этот код выдаёт 5.6GB/s(мы всё бенчим в л1д 32килобайта массив). Казалось бы, если бы мы слушали всяких «гуру», которые нам говорят: accumulate() - оптимизирован, «ты что умнее создатели stl"а?», «конпелятор умнее тебе - сам всё делает оптимально», «руками что-то делать слишком сложно и не нужно» - то мы бы там и остались с этими 5.6ГБ, но мы пойдём дальше и поймём почему так, и является ли это тем, что намн ужно.

Но посмотрев на код - он не векторизован:

	addq	$4, %rdx
	vcvtss2sd	-4(%rdx), %xmm2, %xmm2
	vaddsd	%xmm2, %xmm1, %xmm1

Почему? Патамучто это основная флоатпроблема: Он не ассоциативен - флоат не имеет в себе точных представлений всех чисел входящих в диапазон его «представления» т.е. порядкопроблемы.

Поэтому конпелятор НЕ ВЕКТОРИЗУЕТ флоат по умолчанию, ну никак. Даже такую банальщину.

Для решения этих проблем - есть ключик -funsafe-math-optimizations, который входит в -ffast-math, который кладёт на точность при вычислениях. Добавив его мы получаем уже 44.9GB/s.

Но теперь мы получаем ещё одну проблему - надо думать: «как бэ сунуть эту ключик не повредив там, где этот ключик не нужен».

Поэтому ноцанам, которые хотят быстро и не хоятт рандомных жоп из-за тупости конпелятора - пишут всё руками. Допустим на той же сишке это пишется так:

double memadd_autovec(buf_t buf) { //5.609465GB/s, либо 44.969652GB/s с ffast-math
  float * it = buf_begin(buf), * end = buf_end(buf), summ = 0.;
  do {
    summ += *it++;
  } while(it != end);
  return summ;
}

double hsumf(__v8sf v) {
  return (v[0] + v[1] + v[2] + v[3] + v[4] + v[5] + v[6] + v[7]);
}

double memadd_vec(buf_t buf) { //45.652002GB/s и класть на ffast-math
  __v8sf * it = buf_begin(buf), * end = buf_end(buf), summ = {};
  do {
    summ += *it++;
  } while(it != end);
  return hsumf(summ);
}

Т.е. разницы никакой нет, кроме нужной нам реализации горизантального сложение вектора. Когда я говорил пацану: «векторную сишку для написания быстрого кода юзать намного проще, чем плюсы» - поцан нипонимэ, да и любые пацаны скажут - ну дак с -ffast-math оба выдают по 45гигов - нахрен эта сишка нужна?

А вот зачем:

double memadd(buf_t buf) { //132.878440GB/s
  __v8sf * it = buf_begin(buf), * end = buf_end(buf), summ = {};
  do {
    summ += *it++;summ += *it++;summ += *it++;summ += *it++;
  } while(it != end);
  return hsumf(summ);
}

Это называется пацанский анролл копипастой, а вот заставить конпелятор нормально что-то разанролить очень сложно.

Если бы мы слушали всяких «гуру», которые нам вещают: «анрол говно и не нужен» - мы бы так и седели с 45-ю гигами, а так мы сидим с 132.878440GB/s. Т.е. анролл нам дал немного не мало ~300%.

Но основная мысль, которую толкают всякие «гуру» - это не надо следить за тактами/считать такты и прочее. Но мы о5 сделаем наоборот и посмотрим что будет.

Т.к. наш юзкейс упирается на 99% в throughput и дёргается одна инструкция, то нам достаточно просто считать теоретическую производительность для моего камня. 4.5(частота камня)*8(т.е. у нас камень с avx, то там вектор 32байта, либо 8флоатов.)*1(throughput нашей инструкции - в данном случае vpaddps из интел мануала). Т.е. 36гигафлопс, либо ~144гига. Т.е. мы сняли овер 90% теоретической производительности - остальные 10% у нас ушли в наши циклы, всякие горизонтальные суммы вектора и прочее, ну и конечно же чтение данных из кеша.

Но самое смешное - на моём хасвеле умножение имеет throughput 0.5 - т.е. на хасвеле умножение быстрее сложения. Это новая забористая трава у интела.

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

Поэтому очень смешно слушать, когда какие-то пацаны говорят: «float point имеет такую же производительность как и инты» - нет, оно имеет такоу же производительность лишь по причине того, что на штеуде инты тормазят так же, как и float.

И чтобы окончательно в этом убедится - мы взглянем на fma(вариации умножения со сложением/вычитанем), которые имеют throughput 0.5 - да, да - на хасвеле умножение+сложение в 2раза быстрее просто сложения. Это уже не просто трава - это что-то принципиально новое.

У целочисленного сложения же throughput 0.5 и казалось бы, если мы поменяем в нашей функции float на int - у нас будет сложение работать в 2раза быстрее, но это не так. Оно выдаёт те же 130гигов, а почему?

Вообще у камня есть такая фича, допустим у нас:

add $1, %reg0//вот тут инструкция add залочит регистр reg0
add $1, %reg0//а эта инструкция уйдёт в лок до особождения предыдущей инструкцией регистра reg0

Чтобы такой жопы небыло - есть специальная фича:

add $1, %reg0//lock reg0
add $1, %reg0//И тут вместо того, чтобы уйти в лок - камень вместо reg0 даёт инструкции любой свободный регистр.

Эта фича называется прееименование регистров, либо как-то так - мне лень гуглить.

Дак вот штука в том, что фича работает через жопу. Мне лень читать мануал и искать почему так, но штука в том, что она ограничивает throughput. На умножении и целочисленном сложении она огранивает throughput c 0.5 до 1.

И вот я решил заюзать сложении через fma:

__v8sf fmaadd(__v8sf a, __v8sf b) {
  return _mm256_fmadd_ps(_mm256_set1_ps(1.), a, b);// a + b * 1. == a + b.
}

double memadd_fma(buf_t buf) {
  __v8sf * it = buf_begin(buf), * end = buf_end(buf), summ = {};
  do {
    summ = fmaadd(summ, *it++);
  } while(it != end);
  return hsumf(summ);
}

Но меня ждала жопа: 27.347290GB/s, причем не анролл и ничего не помогал. Я уж подумал, что мануал наврал, но позже до меня допёрло: у неё latency 5тактов и ((4.5×8)÷5)×4 ~= 29гигов - т.е. я получаю производительность с её latency, но какой жопой оно так?

Потом я вспомнил, что гцц гинерит анрольный код вида:

add $1, %reg0
add $1, %reg0
//а не
add $1, %reg0
add $1, %reg1

Т.е. на неё вообще не работает переименовывание регистров - и инструкции постоянно в локе. Я это проверил и оказался прав. Ну и я написал такой мемадд:


__v8sf fmaadd(__v8sf a, __v8sf b) {
  return _mm256_fmadd_ps(_mm256_set1_ps(1.), a, b);
}

inline void fma_10way_finality(__v8sf * cache, __v8sf * it, __v8sf * end) {
  switch(end - it) {
    case 8:
      *(cache + 7) = fmaadd(*(cache + 7), *(it + 7));
      *(cache + 6) = fmaadd(*(cache + 6), *(it + 6));
    case 6:
      *(cache + 5) = fmaadd(*(cache + 5), *(it + 5));
      *(cache + 4) = fmaadd(*(cache + 4), *(it + 4));
    case 4:
      *(cache + 3) = fmaadd(*(cache + 3), *(it + 3));
      *(cache + 2) = fmaadd(*(cache + 2), *(it + 2));
    case 2:
      *(cache + 1) = fmaadd(*(cache + 1), *(it + 1));
      *(cache + 0) = fmaadd(*(cache + 0), *(it + 0));
    case 0:
      break;
    default: error_at_line(-1, 0, __FILE__, __LINE__, "bad_aligned");
  }
}

double memaddfma_10way(buf_t buf) {
  __v8sf * it = buf_begin(buf), * end = buf_end(buf), summ = (__v8sf){};
  __v8sf * cache = (__v8sf[10]){{}};
  uint64_t i = 0;
  while((it += 10) <= end) {
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    *(cache + i) = fmaadd(*(cache + i), *(it - i - 1));++i;
    i = 0;
  }
  fma_10way_finality(cache, (it - 10), end);
  summ = (*(cache + 0) + *(cache + 1) + *(cache + 2) + *(cache + 3) +
	  *(cache + 4) + *(cache + 5) + *(cache + 6) + *(cache + 7) +
	  *(cache + 8) + *(cache + 9));
  return hsumf(summ);
}

Пришлось хреначить финалити, ибо тут «анролл» на 10, а почему на 10 - для максимального throughput"а - надо, чтобы каждый каждый регистр юзался через 5тактов - т.е. 10регистров.

И вся эта порятнка нужна для борьбы с тупостью конпелятора.

Это уже: 214.167252GB/s(раельно там в районе 250 - просто мой бенч говно). 107 гигафлопс на ведро. Из теоретических 144, но тут уже влияние кеша. Причем 50+ из которых выкидываются и просто бесплатные.

Теперь вопрос к пацанам - что нам дадут эти гагфлопсы, когда у нас будет массив не 32килобайта, а 32мегабайта? Зачем нужно выживать максимум, когда скорость памяти отсилы 20-30гигабайт и нам хватит даже С++ кода с ffast-math?

Ну и призываются упомянутые мною пацаны: mv - этот тот експерт, что вещал про «руками переименовывать регистры не надо» и «анрол ваще ненужен», emulek вещал про ненужность счёта тактов, и не понимал что такое «беслпатно», AIv - не понимал в чем проблема плюсов, ck114 - так же не понимал в чем проблема плюсов.

Бенчи: https://gist.github.com/superhackkiller1997/606be26fa158ef75501d - вроде я там ничего не напутал.

P.S. - не выпиливайте пж, пусть пацаны «нужно» или «не нужно». Мне интеерсно. Ну и там рекомендации пацанов.

 , , ,

Carb_blog
()

Помогите выбрать осциллограф

Форум — Talks

Надумалось мне купить на поиграться осциллограф. Точных целей для такой покупки у меня нет. Брать решил бу на авито. Из всех представленных моделей в моем регионе мне приглянулись:

С1-49 за 2000 рублей

С1-68 за 2500 рублей

С1-94 за 3500 рублей

Поскольку в данной теме я нуль то хотелось бы знать что посоветует разум лора.

 

Behem0th
()

Battlestation & Homelab

Галерея — Рабочие места

Давно хотел организовать себе домашний офис/homelab и решил задокументировать результат, мало ли кому-нибудь окажется полезным.

В нише над камином расположена основная рабочая(домашняя?) станция, Macbook Pro вставленный в док и UPS. Пучок из нескольких DisplayPort и USB3 проводов проброшен через стену к столу.

В мониторе встроен KVM, и с одной кнопки переключается видео между macbook & PC, а так же перебрасываются все USB устройства расположенные на и под столом.

Почти все что тут есть интегрировано в HomeAssistant, включая оконные сенсоры, свет, камин и standing desk, в основном используя различные DIY устройства на ESP8266 & ESP32. Так же все управляется голосом через Amazon Echo.

Отлично работает Witcher 3 & Metro Exodus через Wine + DXVK.

Для гитары, под столом установлен JAM 96k, - тоже работает прекрасно с Jack/Wine/WineAsio & Amplitube 4.

pywal генерирует цветовую схему для всех CLI приложений и устанавливает цвет Nanoleaf Aurora & Hue через HomeAssistant. Видео

На одной из ножек стола прикреплен HTC Vive linkbox, и остается только подключить VR шлем и наслаждаться ждать когда состояние VR на Linux поднимется выше уровня плинтуса.

Yubikey для 2FA установлен рядом с усилителем, как раз примерно там где удобно его нажимать.

Чтобы не искать каждый раз розетки - по бокам стола разведены провода для питания и USB. Осциллограф и блок питания управляются через USBTMC & Sigrok. Для работы с мелкими деталями я сделал LED плату которая установлена под микрофон который теперь по совместительству - настольная лампа.

Workstation:

  • CPU: AMD Threadripper 1950X

  • AIO: Thermaltake Floe Riing 360 TT

  • Motherboard: ASRock - X399 Taichi

  • RAM: G.Skill - Trident Z RGB 32 GB (4 x 8 GB) DDR4-3200 Memory

  • SSD: HP - EX920 1 TB M.2-2280 Solid State Drive x 2

  • HD: WD Red WD100EFAX 10TB

  • GPU: EVGA - GeForce GTX 1080 Ti 11 GB SC Black Edition Video Card

  • CASE: NZXT - H700 ATX Mid Tower Case

  • PSU: Corsair - 1000 W

Полный альбом тут: https://imgur.com/a/qukjPVl

>>> Просмотр (4032x3024, 3597 Kb)

 , , homeassistant, ,

KoDeR
()

Поиск работы за границей РФ: доступ из вашей страны запрещен и другие важные вещи

Форум — Job

Как вы знаете, в РФ есть довольно странное законодательство на счет персональных данных, в котором зарубежные рекрутеры не хотят разбираться. Со стороны это выглядит так, как будто вы пошли на сайт например Red Hat или IBM, а нажать кнопку «apply» вам не дали, вывесив текст о том, что законодательство вашей cтраны не позволяет обрабатывать персданные за границей.

ВАЖНО: эту заглушку не ставит работодатель, ее ставит рекрутер потому что так ему посоветовал МакКинзи или Прайс, которые так посоветовали потому что увидели некоторый риск для рекрутера. Никаких других прчин для этого нет, если вы зайдете на ту же страницу с IP любой европейской страны или США, то ваше резюме будет принято, рассмотрено, вам будут звонить на ваш российский номер телефона.

Важно понимать, что перетащить вас из страны в страну стоит некоторого количества сил и денег. Самостоятельно этого добиться трудно, для этого есть специальные агенства, у которых есть отработанные процедуры. Из этого есть 2 важных прямых следствия и одно косвеное: искать работу стоит в больших корпорациях/стартапах с деньгами, которым не горит вас нанять и для которых затраты на перевозку не критичны. Просто составьте таблицу больших фирм, чья продукция вам нравится, сходите на их раздел «Карьера» и попроситесь на все-все вакансии, которые вам подходят. Второе следствие: естественно все эти затраты кратно вернутся работодателю за первые ваши 2 года работы, так как бизнес - деятельность по извлечению прибыли и единственная причина вас нанять и тащить через пол мира - маржинальность вашей деятельности (местный попросит больше денег и не будет так держаться за место как вы за визу). Это нормально, считайте их затраты на ваше беспроблемное перемещение своей косвенной прибылью. Самостоятельно вы все равно потратите больше, можете потерпеть неудачу не зная точно важных формальностей. Косвенное следствие: с идущими работать в большую корпорацию посольство обращается значительно мягче, чем с идущими работать в новую или мутную фирму.

Прежде чем посылать CV в большую фирму, сходите на Linkedin/Facebook, пройдитесь там по знакомым и укажите их как референсы в резюме. Вы не поверите, сколько пользователей ЛОР, например, в Бренском Red Hat или IBM и с каким удовольствием они оставят о вас отзыв своему HR. Cпойлер: это возможные премии во многих конторах, так что не стесняйтесь спрашивать и просить рекомендации.

UPDATE из 2019. Теперь по крайней мере Red Hat заставляет формально аппаиться через российское представительство посте того, как зааплаился через VPN.

Перемещено Falcon-peregrinus из job

Перемещено Klymedy из talks

 , ,

Shaman007
()

Эволюция программиста на Rust

Форум — Talks

Я просто оставлю это здесь: http://antoyo.ml/evolution-rust-programmer

 

tailgunner
()

Какие счас есть годные фильмы?

Форум — Talks

Что-нибудь свежее 2017-2018, что-то годное (а не из посредственного), по жанрам - хоррор, либо сайнс фикшн (можно и просто с интересным и необычным сюжетом), либо что-то романтическое для просмотра с тян. Ну и в доступе на каком-нибудь рутрекере чтобы было, на всяких приватных фильмообменниках как-то не удосуживался регу искать. А то не слишком часто смотрю, а последние 2 попались - такой шлак редкостный, даже как-то пожалел о потраченных полутора часах жизни.

 

fehhner
()

Пьеса «Тред на ЛОРе», в одно действие.

Форум — Talks

по мотивам Ищу гуру Си программирования

Входит Вопрощающий:

Всем привет.
Есть тут свободные полгода
В которые хотел бы я программы изучать,
Даю вам это знать.
Пока что начал только Java лишь учить
По книге, впрочем, и дошёл до ООП,
Вы подскажите, это правильно, иль надобно тем книгам сгнить?
Хотел бы выбрать я ЯП и направление,
Что позволяло бы работать на фрилансе,
А также, у людей чтоб вызывалось изумление.

Входит ЛОРовец:
Двадцатник баксов в час, или забудь о нас

Входит Новенький:
You're welcome.
Давай свои контакты - отпишу.
Ведь мне не жалко помогать, один чёрт одиночество последнее недели
Так разъедает душу мне, что еле я дышу.

Входит Наркоман:
K&R расскажет, и покажет
Тебе всё милый друг,
Ну а коль что вдруг непонятно станет, то значит в голове недуг.
Ведь суть проста: конструкций мало, новых слов десятка два.
И сей язык освоишь быстро.
Хочу предупредить я, правда, что сам язык не цель твоя,
Ведь цель должна учится на ошибках.
Важнее знать не то, что как вам делать сударь,
Важнее путь тернистый, полный ям, и отроколов
Вам пройти и знать тропинку по которой надобно идти таким путем
Чтобы все ямки обойти.
И к сожаленью, или, может, к счастью, тропинку ту лишь одному тебе дано найти.
Ведь мудрый путник лишь укажет, в какую можно сторону идти.

Входит Зевака:
Внесите царя.

Входит Лавсан:
Я хоть не Царь, но знаю всё про Си, давай, спроси

Вопрощающий:
Жду контакта.

Входит Некто:
Будут вопросы - кастуй, или пиши на мыло.
И мыло можно, если что, найти в LKML и ffmpeg-develop.

Входит Царь:
О Наркоман, а почему нули,
Которые смешать с навозом в три счета,
Так много кукарекают о том, о чем не понимают ничерта?

И ладно, я бы понял, если ты бы что-то мог,
Но тыж не смог, дак почему ж несмогший путник,
Который тонет в луже иль болоте,
Иль где-то на задворках недовуза, тот пыжиться кого-то направлять?
Куда ты их направишь? Ты желаешь, их повернуть развитие всё вспять?
Ведь что ты можешь,
Как кроме повторять приевшиеся шутки,
и предлагать приевшиеся книжки,
Ответь, мальчишка?
И удиви меня своим вопросом.

Вопрощающий:
Увы, нет у меня таких вопросов
(И тут же поникает носом)

Входит Эдди: (лавсану)
Ты царь?

Лавсан:
Кто такой царь?

Новенький (лавсану):
Он твой последователь.
Вон, четырьмя постами выше.
И, потише,
Сейчас начнется развлеченье.

Эдди (лавсану):
А, раз не царь ты, то ведь Си не знаешь!
К тому же, зачем еще и о Царе тут вопрошаешь?

Царь (вопрошающему):
Причем тут удивительные.
Когда хотите вы спросить что-либо, то естественно,
Что на пространные вопросы,
Не менее пространные я буду вынужден вам отвечать ответы,
Поймите ж это.

Поэтому, Царя должны вы право заинтриговать,
Чтобы смог он для себя обосновать
Полезность траты времени на ху**оса.
Вот смысл моего вопроса.
Зачем царю писать куда-то, без причины?
Не есть ли это признак вроде Эдди дурачины?

Входит Аноним:
Какое-то собранье зебр в треде.
И странно, все стихами говорят.
Похоже, что попал я в Ад.

ЗАНАВЕС.

 ,

lovesan
()

Прокачка скиллов критического мышления

Форум — Talks

Недавно у нас в компании (специализирующейся на различных курсах и тренингах) произошел вот такой инцидент.

1. Сверху (CEO) принято постановление, что онлайн-курсы на технические темы с 6 и более участниками - это не наш профиль. Или собирайтесь в классе, или приглашайте учителя в свой офис, или распиливайте группу на несколько, или будет страдать качество. И к этому постановлению шло обоснование, с которым я согласен. CEO утверждает, что довел решение до сведения координаторов, которые отвечают на местах за организацию курсов.

2. Постановление на местах исполняется из рук вон плохо: продаются без распиливания группы онлайн-курсы на 10 человек, поскольку заказчик не согласен на две группы (ну и шел бы к конкурентам). CEO поставил разработчикам низкоприоритетную задачу: при заказе координатором более 6 виртуальных машин одновременно во внутреннем сервисе, показывать плашку с предупреждением, полем для ввода обоснования такого большого заказа (т.к. виртуальные машины в облаке иногда используются для занятий в классе или в офисе, или нужно по две машины на участника, или есть еще куча других причин) и кнопкой «отправить».

3. Разработчик потратил время и сделал ровно то, что просили: плашку во внутреннем сервисе для заказа виртуальных машин. Итог: в поле ввода координаторы пишут фразу типа «это уже проданный онлайн-курс для 10 участников». Т.е. глупая бюрократия и ничего более. И этот результат можно было предвидеть.

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

Собственно - как, не обидев разработчика, указать ему, что в общем-то от него в данном случае ожидалась критика, а не слепое выполнение глупого задания? Может, дать ему что почитать, чтобы развить скиллы понимания картины в целом и критического мышления?

 ,

AEP
()

Smach Z - Портативная игровая консоль с впечатляющими характеристиками.

Форум — Games

Пару лет назад на форуме обсуждался сбор средств на создание портативной консоли под управлением Steam OS. С того момента многое изменилось.

Начиная с 15 марта стал возможен ее предзаказ.
Технические характеристики:
Процессор: AMD Ryzen V 1605B 3.6 GHZ с интегрированным GPU AMD Radeon Vega 8 Graphics;
Оперативная память: 4 GB DDR4 2133 MHz (при желании можно установить до 16 GB);
Устройства хранения данных: SSD 64 GB, SD Card (до 512 GB);
Дисплей: 6-дюймовый с разрешением 1920x1080;
Средства беспроводной связи: WiFi 802.11 b/g/n/d/e/h/i и Bluetooth v4.0;
Разъемы: USB-C (используется для зарядки), USB-A, Micro USB, Display Port 1.4, Audio minijack;
Аккумулятор: Литий-ионный из 4 ячеек по 3200 mAh. Полностью заряжается за 45 минут. Время работы от аккумулятора составит от 2 до 7 часов;
Операционные системы: Smach OS (Собственный Linux дистрибутив) или Windows 10 Home.

Геймпад частично собирается из модулей, что позволяет его конфигурировать под себя. К устройству можно подключить клавиатуру и мышь. Также создатели обещают, что консоль можно будет подключить к монитору и использовать ее как обычный компьютер.
Цена предзаказа (позже может измениться): 699 евро
Также можно предзаказать pro-версию (8 GB оперативной памяти, 128 GB SSD, камера 5 Mpx) за 899 евро.

Сайт: https://www.smachz.com/

Разработчики провели тесты с современными AAA-играми и вот результаты:
The Witcher 3 (720p Medium settings) ~ 40 FPS
Alien: Isolation (1080p Low settings) ~ 50 FPS
GTA 5 (720p Normal settings) ~ 60 FPS
League of Legends (1080p High settings) ~ 60 FPS
Rocket League (1080p Normal settings) ~ 60 FPS
Dark Souls 3 (720p Low settings) ~ 40 FPS

 ,

Leupold_cat
()

Какой есть фильм(хф,рисованный, любой) с наикрутейшим логическим замесом?

Форум — Talks

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

 , ,

Siado
()

Как с наибольшими удобствами продаться копирастам?

Форум — Talks

Лично я считаю, что ввиду фундаментальной разницы между материей и энергией с одной стороны и информацией с другой, оплата авторам и издателям должна осуществляться за акт создания новой информации, а не за акт копирования. И поэтому модель, когда покупателям предлагают платить за каждую копию, применима к торговле табуретками, но не к музыке, книгам, кино и прочему. Однако, на данный момент альтернативные модели либо не существуют, либо недостаточно проработаны. Поэтому на минуточку допустим, что я внял увещеваниям копирастов и согласен платить за то музло, что я слушаю. Тем более, что цена низка и этот факт вкупе с моей ленью искать торренты с нужной мне музыкой может перевесить моё недовольство тем, что музыкой торгуют так же, как табуретками.

Но! За свои деньги мне хочется получить то, что нужно мне. А мне нужно, чтобы, купив музла, я мог его удобно скачать на нужное мне устройство без DRM, SMS и использования дополнительного софта. Также хотелось бы иметь возможность выбора кодека и битрейта, но это уже опционально. А вопрос заключается в следующем: какие площадки, торгующие музлом, обеспечат мне мои хотелки и широкий выбор? Вроде бы подходит Bandcamp, но там нет всего, что мне интересно. Что ещё есть?

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

 ,

Zenom
()

Простой мониторинг множества серверов

Форум — Admin

Привет, ЛОР. Такая ситуация, что серверов в моем распоряжении стало как-то слишком много и все они падают довольно сложно стало за всем следить.

Потыкал я мониторинги в целом — и какое-то они говно полное. У одного полный разбор состояния сервера с кучей графиков, но никакой сводной таблицы нет. Другой просто в целом слишком спартанский.

Вот как я вижу идеально подходящий мне мониторинг:

  • Одна таблица, полностью умещающаяся на экран. Одна строчка — один севрер.
  • Столбцы:
    • жив ли вообще сервер (uptime) или сколько времени он уже не жив
    • температура
    • количество доступных апдейтов
    • состояние выбранных определенных сервисов (с возможностью отобразить время работы, т.е. время с предыдущего падения)

И... всё. Я уже настолько отчаялся, что даже готов потрахаться с настройкой всего этого дела, а не взять всё уже готовенькое.

Есть ли что-то подобное?

 ,

derlafff
()

Хотеть осциллограф, но не мочь выбрать.

Форум — General

Когда мне стукнуло четыре, я засунул пальцы в розетку.
С тех пор я изъясняюсь исключительно матом, писаюсь в штанишки, почесывая правой пяткой левый глаз, не закусывая пью тёплую чачу по полтора литра за присест и постоянно мечтаю об осциллографе.


Внимание, вопрос!
Какой осциллограф из недорогих моделей подскажет уважаемый all?
Нужно для мелкобытовых нужд. Ну, там, починить телевизор, планшет, мобильник etc.
Также интересует опыт с aliexpress.

Спасибо!

 , , , ,

Deleted
()