Pull to refresh
-6
0
Send message

Педальку в пол, или как ещё ускорить CPU-bound приложение?

Reading time29 min
Views6.2K

Зачем я это читаю?


TL;DR:


  • Переложив секции кода и данных программы на большие страницы можно существенно ускорить приложение (у нас получилось до +10%) не трогая исходный код.
  • Можно быстро проверить ничего не перекомпилируя, детали здесь.
  • Финальное решение оперирует "классическими" большими страницами (не transparent huge pages), поэтому в какой-то степени его можно назвать дальнейшим развитием libhugetlbfs.
Читать дальше →
Total votes 36: ↑35 and ↓1+34
Comments2

Кто такие шизоиды, где они обитают, и почему вам может быть полезно о них узнать

Reading time35 min
Views144K

Основные стереотипы о шизоидах в одной картинке

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

Сам этот характер довольно тяжело описать одновременно коротко и корректно. Некоторые называют их «гиками», «интровертами», «чудаками», «ботаниками», «хикканами», «эксцентричными», «нердами», «компьютерными гениями»[1, стр. 231], и все эти характеристики в той или иной мере имеют отношение к, собственно, шизоидам, но ни одна из них не является определяющей.

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

Большая часть литературы, посвящённой шизоидам, имеет клиническую направленность и описывает достаточно тяжёлые случаи шизоидизации, а в рамках этого текста я хотел бы рассказать о здоровых шизоидах, коих среди нас присутствует достаточно для того, чтобы их особенности имели значение в контексте трудовых отношений, управления и маркетинга.
Читать дальше →
Total votes 170: ↑163 and ↓7+156
Comments351

Им было нечего скрывать

Reading time7 min
Views73K
Мы не первый год работаем на рынке информационной безопасности. Основные наши клиенты – правоохранительные органы разных стран, спецслужбы, а также отделы IT безопасности в крупных компаниях. Иногда наши клиенты делятся с нами интересными историями; о некоторых из них можно прочитать и в средствах массовой информации. Сегодня я хочу рассказать несколько историй о людях, которым было «нечего скрывать» и у которых в результате возникли серьёзные проблемы буквально на ровном месте.

В чём проблема?


Я часто пишу статьи на тему информационной безопасности. Иногда получается понятно для неспециалиста, иногда, вероятно, не очень. «Что-то я вообще не понял посыла статьи […] в чем проблема?», «имхо, проблема с icloud, слегка притянута за уши», ну и бессмертное – «я не стал заморачиваться, мне нечего скрывать». Отлично, давайте посмотрим, стоит ли вам что-либо скрывать.

Celebgate: «проблема с iCloud слегка притянута за уши»


С момента выхода нашего первого продукта для извлечения данных из iCloud прошло более пяти лет. Ключ от продукта Elcomsoft Phone Password Breaker (сейчас у него другое название), который на тот момент мы продавали исключительно правоохранительным органам, был украден и попал в руки хакерской группировки.
Читать дальше →
Total votes 115: ↑107 and ↓8+99
Comments341

Важнейшие заблуждения о разработке игр

Reading time8 min
Views59K
Здравствуйте, коллеги.

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


Читать дальше →
Total votes 80: ↑79 and ↓1+78
Comments99

Input lag во время рендеринга и как его побеждать

Reading time6 min
Views34K
Привет всем. Многие из вас знакомы с лагом ввода. Это бывает, когда вас в очередной раз убивают в компьютерной игре, и вы кричите: «Ну я же нажал блок/атаку/уворот». Ну а затем джойстик летит в стену. Знакомо? Происходит это потому, что между нажатием клавиш и появлением результата на экране проходит значительное время. Фактически, когда вы смотрите в экран — вы видите прошлое состояние, которое может абсолютно не отражать действительность.

Если вы разрабатываете собственную игру, или вообще занимаетесь рендером, и хотите уменьшить задержки ввода, то крайне советую заглянуть под кат.
Поехали
Total votes 65: ↑64 and ↓1+63
Comments37

Неуловимая проблема тайминга кадров

Reading time13 min
Views155K

Технический директор Croteam Ален Ладавач, участвовавший в разработке Serious Sam и Talos Principle, рассказывает, как ему удалось найти причину торможения графики даже на самых мощных машинах.

Наконец-то появилось объяснение того, почему некоторые игры тормозят на вашем PC (и луч надежды на то, что в ближайшем будущем они тормозить перестанут).

Т-т-тормоза


Вы с нетерпением ждали следующей части вашей любимой серии видеоигр для PC и она наконец вышла. На этот раз вы хотите насладиться ею во всей полноте, поэтому потратили деньги и время на тщательную подготовку. Вы заменили процессор, поставили сверхсовременную видеокарту, добавили ещё ОЗУ — чёрт возьми, даже купили RAID на SSD. Игра должна быть плавной с самой заставки.

Предзаказ наконец разблокирован и вы только что завершили установку. В нервном предвкушении вы впервые запускаете игру. Пока всё хорошо — она работает с частотой 60 кадров в секунду. Или, по крайней мере, так сообщает счётчик кадров тюнера GPU. Но что-то не так. Вы делаете мышью резкие, хаотичные движения. Стрейфитесь влево-вправо, и тут игра… начинает тормозить! Блин, да как такое возможно? Как она может тормозить при 60 кадрах в секунду?

Если такое с вами никогда не случалось, то это может показаться смешным. Но если вы их испытали, то, скорее всего, ненавидите тормоза всей душой. Тормоза в играх. Это не старый добрый «лаг». Не низкая частота кадров. Это просто «тормоза», происходящие при высоких частотах кадров на идеальных, супербыстрых машинах. Что это, откуда они взялись и как от них избавиться? Позвольте мне рассказать вам историю…
Total votes 135: ↑131 and ↓4+127
Comments276

Реализация «Тетриса» в игре «Жизнь»

Reading time39 min
Views38K
То, что начиналось как приключение, закончилось одиссеей.

image

Задача по созданию тетрис-процессора размером 2 940 928 x 10 295 296


Этот проект стал кульминацией труда множества пользователей в течение последних полутора лет. Хотя состав команды со временем менялся, в написании этой статьи принимали участие следующие авторы:

  • PhiNotPi
  • El'endia Starman
  • K Zhang
  • Muddyfish
  • Kritixi Lithos
  • Mego
  • Quartata

Также мы хотим поблагодарить 7H3_H4CK3R, Conor O'Brien и многих других пользователей, вложивших свои труд в решение этой задачи.

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

Стоит также заглянуть в GitHub нашей организации, в котором мы выложили весь код, написанный для решения задачи. Вопросы можно задавать в нашем чате разработки.
Читать дальше →
Total votes 166: ↑166 and ↓0+166
Comments47

Ломаем Android. Как глубока кроличья нора?

Reading time22 min
Views109K

image


Мой первый Android телефон Galaxy Note N7000 был приобретен сразу после анонса в октябре 2011 года. Благодаря одному немецкому умельцу под ником bauner, у меня была возможность использовать последнюю версию CyanogenMod (ныне LineageOS). До тех пор, пока полтора года назад телефон не умер от китайской автомобильной зарядки.


Замену искал долго и остановился на Kyocera (да, они и телефоны выпускают) KC-S701. Он отличается брутальным внешним видом и отсутствием сенсорных кнопок. О root доступе к телефону я тогда даже и не задумывался, полагая, что нынче каждый телефон тем или иным способом имеет возможность получения root. И найдется умелец, который сможет под него портировать CyanogenMod. Я ошибался.


За полтора года было выпущено всего одно обновление — фикс падения ядра от специально сформированного ping пакета. А Android KitKat уже год назад был не первой свежести. Root доступ на этот телефон так никто и не получил, и никакой информации о нем не было. Отмечу, что тоже самое железо используется в американской версии телефона Kyocera Brigadier E6782, в котором по-умолчанию активизирован режим fastboot и нет ограничения на запуск неподписанных ядер (именно запуск, а не прошивку, и только при использовании непропатченного bootloader'а, CVE-2014-4325) и присутствует возможность загружаться в эти режимы путём зажатия кнопок телефона. Стараниями Verizon (а может Kyocera?) версия Android на Brigadier была обновлена до Lollipop.


Итак, я решил разобраться с процессом получения root на Android самостоятельно.

Читать дальше →
Total votes 113: ↑110 and ↓3+107
Comments46

Еще одна камера для FreeTrack

Reading time1 min
Views16K
Я знаю что данное изобретение уже прилично измусолено на просторах Интернета. И написав эту статью, точнее коротенький пост я не открываю америку. Скорее это мануал по разборке камеры.

Просто дело в том, что я собрался смастерить с ребенком подобный девайс и обнаружил что рекомендованные камеры сейчас просто не найти и все ссылки уже как правило устарели. Оббегав все магазины я не нашел ни чего подходящего, но почему то мой взгляд упал на камеру Ritmix RVC-007M
Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments8

Русский отец Звездных Войн

Reading time10 min
Views68K


Каждый день в робошколе проходят занятия на которых, ученики собирают роботов и слушают о них лекции. И вот на днях как-то встал вопрос кто из русских фантастов оказал на НФ самое большое влияние. Оказалось, что имя Павла Клушанцева не знает никто. А ведь на западе это главный русский фантаст, о стругацких там не слышали, а вот в подражание Клушанцеву Лукас снял свои замечательные Звездные войны. Давайте это исправлять.



Если нужно посмотреть всего один фильм для знакомства с ХХ веком, звездные войны вне конкуренции. Нет фильма оказавшего больше влияние на поп-культуру, подтверждением тому Рейган назвавший СССР Империей зла и объявивший ей «Звездные Войны» СОИ. Почему именно Звездные Войны завоевали такую популярность?

Секрет успеха звездных войн лежит на поверхности если вы хоть немного знакомы с теорией кино или т.н. «электронных средств коммуникации». Вся теория укладывается в четыре слова «Media is the message». Медиа и есть сообщение — впервые вывел в своей книги Маршалл Макклюен в своей книге «Понимание медиа». Она вышла в 1968 небольшим тиражом, но просочилась в среду хиппи и киношников Голливуда. Книга была довольно заумной, местами малодоказательной и похожей на эзотерику хиппи, но его схемы безупречно объясняли, что происходит. Например, почему телевизор с плохой картинкой неожиданно оказался гораздо популярнее кино.

Как устроены Звездные Войны?
Total votes 63: ↑56 and ↓7+49
Comments69

Роутинг и policy-routing в Linux при помощи iproute2

Reading time6 min
Views253K
Речь в статье пойдет о роутинге сетевых пакетов в Linux. А конкретно – о типе роутинга под названием policy-routing (роутинг на основании политик). Этот тип роутинга позволяет маршрутизировать пакеты на основании ряда достаточно гибких правил, в отличие от классического механизма маршрутизации destination-routing (роутинг на основании адреса назначения). Policy-routing применяется в случае наличия нескольких сетевых интерфейсов и необходимости отправлять определенные пакеты на определенный интерфейс, причем пакеты определяются не по адресу назначения или не только по адресу назначения. Например, policy-routing может использоваться для: балансировки трафика между несколькими внешними каналами (аплинками), обеспечения доступа к серверу в случае нескольких аплинков, при необходимости отправлять пакеты с разных внутренних адресов через разные внешние интерфейсы, даже для отправки пакетов на разные TCP-порты через разные интерфейсы и т.д.
Для управления сетевыми интерфейсами, маршрутизацией и шейпированием в Linux служит пакет утилит iproute2.
Читать дальше →
Total votes 56: ↑51 and ↓5+46
Comments10

Легким движением руки GeForce GTX 690 превращается в Quadro K5000 или Tesla K10

Reading time2 min
Views226K
Когда вы покупаете GeForce GTX 690 — самую дорогую в линейке двухпроцессорных видеокарт от NVidia — вы ожидаете наилучшей производительности и поддержки всех функций. Что ж, это действительно так, однако эта видеокарта не поддерживает ту же технологию, что и ее профессиональный коллега Quadro K5000.

Если вы сможете переделать GeForce в Quadro, то сможете сэкономить порядка $1000. Этим и занялся пользователь с ником gnif с форума EEV, потому что в ОС Windows GTX 690 поддерживает технологию NVIDIA Surround, но не поддерживает технологию Mosaic, которая является эксклюзивной технологией серии Quadro, в ОС Linux. Стоит отметить и тот факт, что видеокарта Quadro K5000 является однопроцессорной с частотой ниже, чем у 690.
Читать дальше →
Total votes 94: ↑90 and ↓4+86
Comments153

Европейская компания предлагает картонные домики-конструкторы для кошек

Reading time1 min
Views13K


Компания, успешно производящая одноразовые кошачьи туалеты из картона PoopyCat, решила расширить свой ассортимент. Так появился сборный картонный игровой домик для питомцев. На Кикстартере успешно завершилась их кампания по сбору денег на проект под названием Blocks, которая превысила ожидания почти в 5 раз – 23.8 тысяч евро вместо 5.5 тысяч.
Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments25

Боевой арсенал Erlang разработчика

Reading time4 min
Views22K
Доброе время суток, уважаемая аудитория хабра.

В данной публикации я хотел описать свой опыт перехода с корпоративного Java на Erlang.

Погружения в Erlang в первом приближении

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

После довольно продолжительного времени Java/Python разработки, я решил кардинально изменить сферу деятельность и открыл для себя Erlang.
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments19

То, чего еще никто не писал про Нокиа, Элопа и горящую платформу

Reading time40 min
Views547K
Взявшись за этот пост, автор полностью отдает себе отчет. И в том что «набило оскомину». И что «только ленивый не кинул камень». И про то что «хватит уже, достали». Однако, вдоволь начитавшись доморощенных и не очень аналитиков, автор решил все-таки выразить собственное мнение, которое отличается от того общепринятого, что с некоей мазохистской истомой доселе перепечатывалось здесь и тут различными авторами, интерпретаторами и переводчиками. Вероятно кому-то будет интересно его прочитать.

Традиционно, для тех кто не любит много буков, краткие (более-менее) тезисы:

  • Будучи долгое время лидером на рынке, Нокиа сильно расслабилась и загадила свою внутреннюю инфраструктуру бюрократией, чрезмерным аутсорсингом и огромным количеством бесполезной «менеджерской прослойки».
  • Будучи долгое время лидером, Нокиа просрала потратила много денег на ненужные операционные расходы, поглощения никому не нужных фирм и на невменяемую модель аутсорсинга.
  • Полностью оторвавшись от реальности с уходом Йормы Оллилла, Нокиа, под управлением гениального юриста CEO Олли-Пекки Каласвуо, потратила кучу денег и усилий на создание бесполезной и неконкурентоспособной сервисной инфраструктуры Ovi. В результате этого, помимо денег, Нокиа потеряла уйму полезного времени, которое можно и нужно было потратить на развитие основного бизнеса — телефонов, софта и т.д.
  • Бюрократия и непотопляемая менеджерская прослойка в Нокиа, последовательно мигрировала из одного передового проекта в другой, в составе одних и тех же групп лиц, самореплицируясь в виде кучи формальных дебилопроцессов комитетов и управленческих групп, немного перетасовываемых с учетом специфики. В итоге именно эта бюрократия убила и Symbian, и Ovi, и MeeGo и остальные попытки догнать уходящий поезд своими силами.
  • Борьба с бюрократией и прослойкой в Нокиа зашла в полный тупик.
  • У великого CEO Элопа просто не было другого выхода кроме как прибить всю старую, неповоротливую и прогнившую организацию, путем создания альянса с Майкрософтом и переходом на Windows Phone. Тем самым все старые процессы, компетенции, технологии и самое главное — люди резко стали, что называется, «не в тему». И следовательно тем самым можно было под благовидным предлогом прибить этот табун менеджеров, бесконечно рисующих фэнтезийные роадмапы с единорогами и перекладывающих бумаги с левого края стола на правый.
  • Новая Нокиа, после 2011 года и старая Нокиа до 2011 года – это две РАЗНЫЕ организации. Их объединяет только общее название и операционка S40 для телефонов Asha.
  • Горящая платформа, это не Symbian и не MeeGo. Горящая платформа, это то состояние в которое Нокиа загнали годы расслабленного лидерства и тупоголовые амбиции предыдущего CEO – Олли-Пекки Каласвуо с кликой подкаркивающих вице-президентов.
  • С бюрократией и бизнес процессами, имеющимися на 2010 год, Нокиа не спас бы ни Андроид, ни половина населения Бангалора, пишущих на Qt под MeeGo. Даже если бы Apple бесплатно передал Нокиа iOS и все сервисы, то они бы выродились руками всяких Requirement Managerов в типичные Нокийские дизайн-химеры и в итоге загнулись через какое-то время.
  • То, что сделал великий CEO Элоп – было единственно возможным разумным решением, дающим хоть какие-то шансы на выживание. Вопрос «каким образом он это сделал?», остается открытым, равно как и вопрос «поможет ли это Нокиа?» в итоге. Не следует забывать, что нынешняя Нокиа — это совершенно новая организация, поэтому глупо предполагать, что она разом вернет себе лидерство. Как и всем новым организациям ей придется за это лидерство долго бороться.
  • Без ошибок и побед Нокиа никогда не было бы ни Андроида, ни Айфона. И Google и Apple тщательно проанализировали достоинства и недостатки более старших конкурентов перед тем как шагнуть вперед.

Все это в деталях — под катом. Предупреждаю что клевых картинок там нет. Сплошное графоманство и ёрничанье.
Читать дальше →
Total votes 548: ↑505 and ↓43+462
Comments330

Как начать летать, хоть на чем-то, самостоятельно

Reading time7 min
Views286K
Мое детство прошло среди людей которые все время на чем то летали. Строили, разрабатывали новое и тут же на нем летали. В 5 лет для меня стало открытием, что кто то в этом мире может не летать. К своим 26 годам я успел попробовать почти все на чем можно летать. Хочу поделиться своим опытом и рассказать о доступных возможностях.
Что бы начать летать у Вас есть такие варианты:

1. Парители (в этой статье)
  • Параплан
  • Дельтаплан
  • Планер

2. Моторный полет (вторая статья)
  • Легкий самолет
  • Мотодельтаплан
  • Паратрайк
  • Парамотор
  • Мотопланер



Начать летать самостоятельно
Total votes 281: ↑261 and ↓20+241
Comments270

Как отлаживать свой мозг

Reading time4 min
Views211K
Перевод статьи Оливера Эмбертона (Oliver Emberton) «How to debug your brain». Оригинал можно найти здесь.

Наши мозги – самое глючное барахло после Internet Explorer.


Для воспроизведения одного распространенного бага, попробуйте приказать себе «пойти в тренажерку». Мозги большей части людей в ответ обновят статус в Facebook и примутся за просмотр роликов с котятами. Это не ожидаемое поведение.

image

К счастью, я разработал заплатку. Но сперва давайте я расскажу, как работает весь этот мозг.
Читать дальше →
Total votes 133: ↑96 and ↓37+59
Comments49

Модулятор REM-фазы сна

Reading time4 min
Views29K
В данной статье предлагаю рассмотреть создание достаточно быстро (~30 секунд) устройства вводящего человека в состояние транса или гипнотического состояния.

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

Началось все с попыток научным образом описать и объяснить феномен осознанных сновидений или другими словами ОСов. Для чего мне пришлось сделать массу экспериментов над собой и окружающими. Как правило эти эксперименты были безболезненными хотя случались исключения. В конечном мне довелось познакомиться с ребятами которые которые занимались этим исследованием более основательно. В частности у ребят оказался электроэнцефалограф (далее ЭЭГ), при помощи которого была снята ЭЭГ работы мозга человека во время осознанного сновидения.
Читать дальше →
Total votes 57: ↑54 and ↓3+51
Comments61

Декодируем GSM с RTL-SDR за 30$

Reading time4 min
Views125K
Доброе время суток, Хабр!

Мы живем в удивительное предсингулярное время. Технологии развиваются стремительно. То, что несколько лет назад казалось фантастикой, сегодня становится реальностью. Удивительно, но сейчас при наличии компьютера с простым ТВ-тюнером можно принимать координаты самолетов и кораблей, спутниковые снимки, данные метеозондов.
Я не являюсь специалистом в области информационной безопасности, все операции были проделаны исключительно в целях обучения. В данном тексте речь пойдет о том, как произвести декодирование (не дешифрование) GSM-трафика.
Читать дальше →
Total votes 49: ↑43 and ↓6+37
Comments20

Google Web Starter Kit: конструктор мобильных сайтов

Reading time1 min
Views51K


Google Web Starter Kit — конструктор и шаблоны для быстрой разработки отзывчивых мобильных сайтов, которые хорошо работают на любой платформе и почти в любом браузере (кроме самых старых). Такие сайты везде выглядят, как нативные приложения.

Основные особенности:
  • HTML-шаблоны, оптимизированные для мобильного применения;
  • отзывчивый макет для разных мобильных устройств
  • руководство по стилю визуальных компонентов;
  • поддержка Guilp.js (по умолчанию), Node.js, Ruby и Sass.
Читать дальше →
Total votes 43: ↑39 and ↓4+35
Comments16
1

Information

Rating
4,324-th
Registered
Activity