Военное ведомство США должно срочно переосмыслить стратегию в области машинного обучения

Автор: admin от 20-03-2018, 12:10, посмотрело: 60

Военное ведомство США должно срочно переосмыслить стратегию в области машинного обучения— Скажите государю, что у англичан ружья кирпичом не чистят: пусть что бы и у нас не чистили, а то, храни Бог войны, они стрелять не годятся – внятно выговорил Левша, перекрестился и умер.

Категория: Админитстрирование » Системное администрирование

 

Программа для мониторинга сети Network MACMonitor

Автор: admin от 14-03-2018, 00:15, посмотрело: 143

Прошло больше года с момента моей предыдущей публикации «Мониторинг mac-адресов на портах сетевых устройств Cisco с помощью протокола snmp». После публикации статьи, многие стали интересоваться: планирую ли я продолжить разработку программы? На что я дал положительный ответ. И вот готова новая версия программы Network MACMonitor.



Network MACMonitor – программа, разработанная для сканирования сетевых устройств (коммутаторов и маршрутизаторов) на наличие подключенных конечных устройств (компьютеров, принтеров, ip телефонов и т. д.). Программа сохраняет информацию о том, к какому порту сетевого устройства подключено конечное устройство, основываясь на его mac адресе. Так же программа сопоставляет mac адреса ip адресам, а ip адреса именам хостов. Поддерживается сопоставление порта сетевого устройства с патч-кордом, патч-панелью, сетевой розеткой.

Категория: Админитстрирование » Системное администрирование

 

Оптимизация кода в уме, или «Ну так же однозначно быстрее»

Автор: admin от 8-03-2018, 19:05, посмотрело: 72

Намедни работая над одной ошибкой в одном опенсорсном проекте, увидел как коллега (тоже работающий параллельно над той же проблемой) залил такой вот коммит [31a078bec7]:



   	/*
-	 * Select the list item based on the index. Negative operand means
-	 * end-based indexing (-2, ...), and -1 means out of range.
+	 * Decode end-offset index values.
   	 */
-	if (opnd < -1) {
-	    index = opnd+1 + objc;
-	} else {
-	    index = opnd;
-	}
+	index = opnd + (opnd <= TCL_INDEX_END)*(objc - 1 - TCL_INDEX_END);
   	pcAdjustment = 5;


Изменение само по себе правильное (теперь TCL_INDEX_END есть константное определение (-2)).



И грубо говоря в уме это разворачивается в следующее (все переменные int):



index = opnd + cmp(opnd, (-2))==>(0 | 1) * (objc - 1 - (-2));


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

И всё как бы ничего, однако меня всё же насторожила такая казалось бы пустячная «оптимизация» с уклоном в арифметику.



Во первых, это изменение касается самой «главной» функции в этом проекте (TEBCresume), ибо она ответственна за исполнение байт-кода (JIT скомпилированных инструкций языка TCL). По этой причине эта функция еще и самая большая (порядка 6 тысяч строк + примитивы и макросы) и одна из самых сложных в кодовой базе проекта, с множественными `goto`, головоломными макросами для работы со «стеком» исполнения, свёртка/развертка NRE (nonrecursive evaluation) и т.д. и т.п.



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



Во вторых, по роду деятельности мне часто приходится оптимизировать сишный код, разглядывая его ассемблерное отражение, выжимая доли микро- а то и нано-секунд, и я часто вижу, что там очень всё совсем не однозначно бывает. Как минимум иногда разворачивая такие вот «экономящие» условный jump конструкции обратно в if или даже if/else, я видел улучшение как и в результирующем ассемблерном коде, так и явно при конечном сравнении производительности результатов исполнения.



Собственно к чему я все это писал — хотелось на примере показать как оно бывает, ну и раз уж коснулись этой темы, собрать немного статистики. Посему пара опросов в конце статьи…
Развернуть в ассемблер ...

Категория: Админитстрирование » Системное администрирование

 

Исследование БД и СУБД с помощью T-SQL

Автор: admin от 8-03-2018, 19:05, посмотрело: 73

Предисловие



Приветствую вновь тебя, уважаемый читатель Хабра!



Когда свои реализованные идеи, опыт, а также всю ту информацию, что не дает покоя, оформляешь в публикации, рано или поздно приходит логическая точка всему ранее написанному потоку информации. Эта статья будет отличаться от всех ранее опубликованных мною своей нестрогостью и более свободным стилем изложения текста, а также она завершит изложение всего моего накопленного опыта по MS SQL Server.



Данная статья является дополнением к статье Исследуем базы данных с помощью T-SQL, а также вкратце рассказывает о созданной базе данных по администрированию SRV и о проектах-утилитах, которые предназначены помочь в работе DBA MS SQL Server.

Категория: Админитстрирование » Системное администрирование

 

Rust: зачем нужны макросы

Автор: admin от 8-03-2018, 19:05, посмотрело: 93

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



Где и как их уместно применять? Смотрите под катом.

Категория: Админитстрирование » Системное администрирование

 

Как я писал свой VNC, а потом нет

Автор: admin от 8-03-2018, 19:05, посмотрело: 104

0. Предыстория


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

Категория: Админитстрирование » Системное администрирование

 

Самые адекватные способы осваивать новое ПО

Автор: admin от 4-03-2018, 20:00, посмотрело: 122

Современные требования к вашей квалификации — это владение (желательно) как можно большим количеством программ по вашей специальности. Когда вы говорите, что вам по плечу разные платформы, то это безусловно ваше конкурентное преимущество.




  • Программист выглядит выигрышнее со знанием нескольких языков программирования

  • Дизайнеру играет на руку возможность переходить из Adobe Illustrator в CorelDraw или InDesign

  • Для звукорежиссёров плюсом является работа в нескольких DAW и с десятками разных плагинов

  • Пиарщик и рекламист хорош, если умеет копаться в личных кабинетах Google AdSense, Adwords и Яндекс.Директа

  • Маркетолог 80-го уровня знает более одной CRM-системы

  • Юристу весьма поможет знакомство с различными информационно-правовыми системами (особенно если речь идёт о рынках разных стран)



Но как найти силы и терпение для изучения каждого «уникального софтверного решения»? Ниже я предлагаю 3 взаимосвязанных способа разобраться с проблемой, порой вызывающей ступор, а также желание просмотреть несколько часов видео на Ютубе или отдать кому-нибудь немалые деньги за сомнительные курсы.

Категория: Админитстрирование » Сетевые технологии

 

Организация системы мониторинга

Автор: admin от 1-03-2018, 13:15, посмотрело: 168

Мониторинг — это главное, что есть у админа. Админы нужны для мониторинга, а мониторинг нужен для админов.



Организация системы мониторинга

За последние несколько лет поменялась сама парадигма мониторинга. Новая эра уже наступила, и если сейчас вы мониторите инфраструктуру как набор серверов — вы не мониторите почти ничего. Потому что теперь "инфраструктура" — это многоуровневая архитектура, и для мониторинга каждого уровня есть свои инструменты.



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



У нас на поддержке около пяти тысяч серверов, в самых разных конфигурациях: от систем из трех серверов с кастомными докеровскими сетками, до больших проектов с сотнями серверов в Kubernetes. И за всем этим надо как-то следить, вовремя понимать, что что-то сломалось и быстро чинить. Для этого надо понять что такое мониторинг, как он строится в современных реалиях, как его проектировать и что он должен делать. Об этом и хотелось бы рассказать.

Категория: Админитстрирование » Системное администрирование

 

Связь в космосе: как это работает

Автор: admin от 1-03-2018, 08:30, посмотрело: 129

Связь в космосе: как это работает

Кадр из фильма “Космическая одиссея 2001 года” (1968)

Представьте, что вам нужно пробросить песчинку через ушко иглы с расстояния 16 000 километров. Примерно тем же самым занимались ученые, отправив в 2004 году к комете Чурюмова-Герасименко межпланетную станцию «Розетта». В 2015 году станция и комета находились на расстоянии около 265,1 млн км от Земли. Однако надёжная связь позволила «Розетте» не только сесть на комету, но и получить ценнейшие научные данные.

Сегодня космическая связь — одно из самых сложных и перспективных направлений развития коммуникационных технологий. Орбитальные спутники уже дали нам GPS, ГЛОНАСС, глобальные точнейшие цифровые карты, интернет и голосовую связь в самых отдаленных районах Земли, но мы смотрим дальше. Как космическая связь работает сейчас и что нас ожидает в будущем?

Категория: Админитстрирование » Сетевые технологии

 

Очевидное благо: как и зачем использовать сервисный подход за рамками ИТ (Часть 3)

Автор: admin от 1-03-2018, 08:30, посмотрело: 91

Продолжаю делиться опытом, как сервисный подход выходит из айтишной сферы (как управление процессами ИТ-обслуживания) и интегрируется с другими внутренними службами компании.
Очевидное благо: как и зачем использовать сервисный подход за рамками ИТ (Часть 3)
Чем полезен сервисный подход и какие «подводные камни» ждут на этом пути я рассказывал. Сегодня – никакой теории, только практические кейсы.

Рассмотрю примеры компаний, где использовались системы класса service desk в тех или иных процессах. В основном, конечно, в ИТ.

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


Опишу кейсы с ответом на вопросы:



  • как сформулирована проблема;

  • какие цели поставлены вместе с заказчиком;

  • что сделано в ходе проекта;

  • каковы итоги.

Категория: Админитстрирование » Сетевые технологии