Обновить
227
1.2

Не в вашем времени

Отправить сообщение

Инструкция по созданию НЛО

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



Читать дальше →

Хабравстреча в Питере

Время на прочтение1 мин
Охват и читатели611
Наконец-то. В следующую среду, 30 ноября, состоится Первая Питерская Хабравстреча. Подробности, организационные вопросы и другие анонсы под катом.


фото с сайта panoramio.com

Читать дальше →

Правила муравьиных баталий

Время на прочтение5 мин
Охват и читатели2K
Продолжаем разбираться в правилах проходящего сейчас турнира Google AI Challenge. Дальше вы можете прочитать перевод официальных правил расчета результатов муравьиных боев.
Читать дальше →

Chrome Hackathon & Contest в Санкт-Петербурге

Время на прочтение1 мин
Охват и читатели722
Санкт-Петербургская группа пользователей технологий Google приглашает на хакатон по Google Chrome в Санкт-Петербурге, который состоится при поддержке Google и движения GTUG (Google Technology User Group) в России и СНГ 27 и 28 августа 2011 года (ближайшие выходные!).

Цель этого конкурса — создать новые веб-приложения и расширения для браузера Google Chrome, которые сделают его еще более удобным для пользователей.

Ключевые докладчики из Google: Ilmari Heikkinen (Developer Programs Engineer) по видеосвязи из Москвы и Mike West (Chrome Advocate) в Санкт-Петербурге.

Мероприятие бесплатное, но требуется регистрация.

Место проведения: бизнес инкубатор QD.

Трое победителей получают ноутбуки Mac Book Air, которые будут вручены во время церемонии награждения на Google Developer Day 2011 Russia. Дополнительные 4-ые и 5-ые места будут награждены ценными призами.

Подробности обо всей серии хакатонов, в том числе в других городах России и СНГ, в официальном блоге.

Организационные партнёры: QD.

Открыт набор на курсы по биоинформатике (Санкт-Петербург)

Время на прочтение2 мин
Охват и читатели1.5K
Открыт набор на курсы по биоинформатике в Санкт-Петербургском Академическом университете РАН на 2011/2012 год.

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

Читать дальше →

Дерево ван Эмде Боаса

Время на прочтение6 мин
Охват и читатели20K
Всем доброго времени суток!

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

Дерево ван Эмде Боаса (van Emde Boas tree) — ассоциативный массив, который позволяет хранить целые числа в диапазоне [0; U), где U = 2k, проще говоря, числа, состоящие не более чем из k бит. Казалось бы, зачем нужно еще какое-то дерево, да еще позволяющее хранить только целые числа, когда существует множество различных сбалансриованных двоичных деревьев поиска, позволяющих выполнять операции вставки, удаления и прочие за O(log n), где n — количество элементов в дереве?

Главная особенность этой структуры — выполнение всех операций за время O(log(log(U))) независимо от количества хранящихся в ней элементов.

Что же там еще есть такого вкусного?

Поиск гамильтонова пути с помощью мембранной системы за полиномиальное время

Время на прочтение9 мин
Охват и читатели6.3K
Составление алгоритмов в рамках той или иной классической алгоритмической модели (машины Тьюринга и Поста, нормальные алгоритмы Маркова, счетчиковые машины Минского и т.д.) смело можно относить к ненормальному программированию в силу исключительной минимальности выразительных средств этих моделей. Не исключением из данного правила является и такая относительно новая алгоритмическая модель, как мембранные системы или P-системы, придуманная румынским ученым Георгием Пауном чуть более десяти лет назад. Целью этого нововведения было исследование вычислительных возможностей клеткоподобных структур (имеются в виду биологические клетки), а вообще вся эта деятельность была инспирирована знаменитым опытом Адлемана по решению задачи о поиске Гамильтонова пути с помощью ДНК-вычислений. Как это ни странно, но данный топик посвящен как раз решению (к сожалению, виртуальному) той же самой задачи, но уже с помощью простейшей мембранной системы. Итак, под катом читатель найдет 1) краткое описание того, что такое мембранные системы; 2) как «программировать» такое «железо»; 3) мембранный алгоритм решения задачи о гамильтоновом пути, обладающий полиномиальным временем выполнения.
Читать дальше →

Подбор паролей к WPA/WPA2 с использованием видеокарты

Время на прочтение6 мин
Охват и читатели207K
Привет, Хабр!
Сегодня я расскажу и покажу вам, как можно использовать всю мощность ваших видеокарт для игр перебора паролей к Wi-Fi. Как-то не комильфо в наше время использовать только процессорные мощности под эти задачи (в частности aircrack-ng), когда в 80% компьютеров есть видеокарта. Поэтому разумно использовать всю потенциальную мощность ваших систем. А именно, речь пойдет о замечательной программе pyrit.
Читать дальше →

Анализ реальных паролей пользователей и улучшенный полный перебор

Время на прочтение3 мин
Охват и читатели8.8K
Прочитал сегодня на хабре перевод статьи Распределение символов в паролях. Захотелось провести свой небольшой анализ. Интерес для меня представляют длины паролей, первые символы паролей и используемые в паролях биграммы (пар смежных символов). А также в статье будет рассмотрен алгоритм улучшенного полного перебора паролей.
Читать дальше →

Основы MPI для «чайников»

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

Основные принципы и пример

В качестве примера будет использоваться расчет экспоненты (e). Один из вариантов ее нахождения — ряд Тейлора:
e^x=∑((x^n)/n!), где суммирование происходит от n=0 до бесконечности.

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

Понимание конфликтов банков разделяемой (shared) памяти в NVIDIA CUDA

Время на прочтение3 мин
Охват и читатели12K
Разделяемая (shared) память является очень эффективным средством оптимизации за счет очень быстрого доступа (в 100 раз быстрее чем глобальная память). Однако, при неправильном использовании ее возможны конфликты банков, которые существенно замедляют быстродействие. В данной статье пойдет речь о том, как эти конфликты возникают, и как их избежать.
Читать дальше →

CUDA: Работа с памятью. Часть I.

Время на прочтение12 мин
Охват и читатели75K
В процессе работы с CUDA я практически не касался вопросов об использовании памяти видеокарты. Настало время убрать этот пробел.
Читать далее...

CUDA: Работа с памятью. Часть II.

Время на прочтение5 мин
Охват и читатели24K
Основная тема этой части – оптимизация работы с глобальной памятью при программировании GPU.

У GPU есть ряд особенностей, игнорирование которых может стоить многократной потери производительности при использовании глобальной памяти. Но если учесть все тонкости, то можно получить действительно эффективные CUDA-программы.

Приступаем.

Читать далее...

CUDA: Как работает GPU

Время на прочтение9 мин
Охват и читатели148K
Внутренняя модель nVidia GPU – ключевой момент в понимании GPGPU с использованием CUDA. В этот раз я постараюсь наиболее детально рассказать о программном устройстве GPUs.
Читать далее...

Рейтрейсер на JavaScript

Время на прочтение8 мин
Охват и читатели22K
TitleImage

Знаете ли вы что такое рейтрейсер? Это программа которая рисует трёхмерную сцену на экране так, как её бы увидели вы. Конечно, не совсем так, но некоторые рейтрейсеры умеют рисовать очень правдоподобные картинки, например как в "Аватаре".

Идея рейтрейсера очень простая и в этой статье я раcскажу как устроен этот алгоритм и даже напишу его на JavaScript. Картинки и пример прилагаются.

Читать дальше →

Шаблонная магия, метафункция IsValidExpression

Время на прочтение7 мин
Охват и читатели2.5K
Доброго времени суток, уважаемое Хабрасообщество.

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

Пример:
/* Определяем метафункцию HasF, которая позволяет определить наличие функции f() у любого класса. */
DECLARE_IS_VALID_EXPRESSION(
    HasF,
    ( ( U * ) NULL )->f() /* Это выражение компилируемо только если присутствует U::f() */ );
 
struct Foo{ void f(); };    
struct Bar{};
 
BOOST_STATIC_ASSERT( HasF< A >::value );  /* Тут константа HasF< A >::value будет true */
BOOST_STATIC_ASSERT( !HasF< B >::value ); /* Тут константа HasF< A >::value будет false */

Как Вы уже, наверное, догадались мы будем думать как написать макрос DECLARE_IS_VALID_EXPRESSION.
Читать дальше →

Гитаризм для линуксоида — why not?

Время на прочтение2 мин
Охват и читатели21K
Один мой хороший друг однажды сказал: — Линуксоидам проще научиться играть на гитаре. — Потому что они привыкли, что сначала долго мучаешься, но потом наслаждаешься результатом.

Он, безусловно, прав. И ниже я хочу рассмотреть некоторое ПО, призванное помочь линуксоиду-гитаристу на его нелёгком, но невероятно интересном пути.
Читать дальше →

Kernel Pool Overflow: от теории к практике

Время на прочтение10 мин
Охват и читатели42K
Ядро Windows всегда было лакомым кусочком для хакера, особенно при наличии законченных методик его эксплуатирования, приводящих к повышению прав. Учитывая тот факт, что за последние несколько лет количество уязвимостей, связанных с переполнением динамической памяти ядра, резко возросло, я активно заинтересовался данным направлением и, к собственному удивлению, в конечном итоге накопал столько материала, что его хватит не на один 0day-баг.

Наглядный ядерный шеллкод :)
Читать дальше →

Геолокация в Windows 7 без GPS

Время на прочтение2 мин
Охват и читатели51K
Много ли вы видели ноутбуков, которые оснащены GPS датчиком? Примерные оценки можно посмотреть тут, 58 штук из 4380, то есть 1.3%. Прямо скажем — не много. Трудно назвать все причины, по которым производители не оснащают портативные компьютеры, в общем-то, недорогим чипом, но наша заметка как раз о том, как ваш ноутбук снабдить функциональностью геолокации, даже если GPS датчика у вас нет. А заодно вы узнаете, как очень просто получить ваши координаты программным способом.
Читать дальше →

Алгоритм роя частиц

Время на прочтение8 мин
Охват и читатели69K

Введение


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


Читать дальше →

Информация

В рейтинге
1 684-й
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность