Pull to refresh
2
0
Send message

Насколько медленны iostreams?

Reading time7 min
Views80K
Потоки ввода-вывода в стандартной библиотеке C++ просты в использовании, типобезопасны, устойчивы к утечке ресурсов, и позволяют простую обработку ошибок. Однако, за ними закрепилась репутация «медленных». Этому есть несколько причин, таких как широкое использование динамической аллокации и виртуальных функций. Вообще, потоки — одна из самых древних частей стандартной библиотеки (они начали использоваться примерно в 1988 году), и многие решения в них сейчас воспринимаются как «спорные». Тем не менее, они широко используются, особенно когда надо написать какую-то простую программу, работающую с текстовыми данными.

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

Сегодня в комментариях у посту возникло обсуждение о медленности iostreams. В частности, freopen пишет
Забавно смотреть на ваши оптимизации, расположенные по соседству со считыванием через cin :)

а aesamson даёт такую рекомендацию
Можно заменить на getchar_unlocked() для *nix или getchar() для всех остальных.
getchar_unlocked > getchar > scanf > cin, где ">" означает быстрее.


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

Геймеры в Fold.it решили научную проблему

Reading time2 min
Views9.2K
В мае 2008 года мы обсуждали новую компьютерную игру Fold.it, которую разработали учёные из Вашингтонского университета (США). Программа представляет собой модель сворачивания белков в трёхмерные конструкции. Геймер должен попытаться сделать это наиболее удачным образом, работая с настоящими протеинами. Результаты отправляются в центр обработки, где их проверяют на суперкомпьютере.



За три прошедших года игроки смогли сложить несколько удачных молекул, но их последняя находка не идёт ни в какое сравнение с предыдущими: была обнаружена и подтверждена точная модель фермента протеазы, который играет ключевую роль в заражении организма обезьян ретровирусом ВИЧ. Модель этого белка не удавалось получить в течение уже 15-ти лет. Теперь же можно попробовать создать лекарство, которое воздействует на этот фермент.
Читать дальше →

Видео всех лекций с «Курсов информационных технологий» от «Яндекса»

Reading time1 min
Views31K
Для тех, кто не смог посетить Курсы информационных технологий, видеоролики всех лекций выложены в свободный доступ. Это лекции по полтора-два часа на базовые темы: операционные системы; архитектура ЭВМ; устройство GNU/Linux; системы хранения данных; файловые системы; сети и протоколы; виртуализация; безопасность.
Читать дальше →

От любви до ненависти один push

Reading time4 min
Views19K
 — Ты не знаешь откуда у меня появляются эти уведомления? — обернувшись спросила Наташа, протягивая свой desire? Я бросил взгляд на трей уведомлений, где лицезрел совершенно незнакомую мне иконку и текст пирблизительно следующего содержания «Лучшие игры онлайн! Бесплатно скачать», после чего текст уходил за отведенные ему 480 px и скрывал дальнейшую суть предложения.

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

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

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

Курс молодого Desire'вода

Reading time4 min
Views9.6K
image
Написать подобную статью меня сподвигнул тот факт, что для человека, влившегося в стройные ряды Desire'водов, информация об платформе Android очень уж фрагментирована. С одной стороны платформа для всех Android устройств одна, с другой стороны для каждого устройства есть свои нюансы и тонкости. Кроме того информации на таких форумах как 4pda.ru и forum.xda-developers.com очень много, но как правило она размазана по всем темам. Приходится продираться сквозь сотни страниц в попытках извлечь ценные частицы информации.
Читать дальше →

Установка Cyanogenmod 7 на HTC Wildfire

Reading time3 min
Views25K
Сейчас речь пойдет об установке Cyanogenmod 7.1 на HTC Wildfire.
Подтолкнул меня на это непреодолимый интерес и желание получить от Валдфаира большего.
-Удалось?
-Да, удалось.

Оговорюсь сразу, делать обзор на Cyanogen я не буду. Уже есть готовые велосипеды: раз, два. Также я хочу разочаровать тех, кто думает после перепрошивки они получат «мультимедийный суперфон». Это не так. Иллюстрация прилагается:image

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

Подробный процесс с картинками под катом.
Читать дальше →

Психологическая деформация программистов. Взгляд с обеих сторон баррикад

Reading time6 min
Views139K
Само наличие психологической деформации у какой-либо профессии, как правило, достаточно спорный момент ввиду того, что у разных людей она проявляется по-разному. Однако общую тенденцию можно выделить и, пожалуй, настало то время когда можно достаточно смело говорить, что программисты всё же имеют свой особенный психологический портрет который обусловлен их профессиональной деятельностью.

Я достаточно часто сталкивался с подобным мнением и не придавал ему особого значения, но когда женский коллектив нашей организации поздравил программистов с 23-м февраля по доброму назвав их «космическими войсками», решил всё же расставить определенные акценты в данном вопросе, т.к. одна из моих профессий связана напрямую с психоанализом. Да и баш уже не молчит.

И что же них такого деформированного?

Профессиональная эмиграция — Часть 1 — Проблема курицы и яйца и как с ней бороться, а также развенчание мифов

Reading time4 min
Views59K
Здравствуйте, Хабраюзеры.

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

Перевод выступления Дэвида Хейнемейерa Ханссонa на Startup School'2008

Reading time1 min
Views1.9K

Часть 1, часть 2

«Все, что вам нужно сделать – это решить чью-то проблему немного лучше, чем другие ребята. Предположим, вы открываете ресторан, итальянский ресторан. Он не обязательно должен быть самым крутым итальянским рестораном в мире. В нём должна быть вкусная еда и приятное обслуживание, чтобы люди в него ходили, а у вас был хороший бизнес. Мне кажется, что не так много людей пытаются создать просто хороший 'итальянский ресторан' в интернете.»

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

Мошенничество с использованием пластиковых карт

Reading time3 min
Views504K
Ещё один сценарий мошенничества с использованием пластиковых банковских карт. Наиболее уязвимы карты Сбербанка, пригодные для платежей в интернете — начиная от Visa Classic и MasterCard Standard. Владельцы «зарплатных» Maestro и прочих Momentum данному приёму не подвержены.
Читать дальше →

История одного «нарушения» авторских прав. Часть 1

Reading time7 min
Views35K
В этом посте я расскажу про реальный случай уголовного преследования по статье 146 УК РФ, а заодно и по 273 (нарушение авторских прав и создание/распространение/использование вредоносного ПО). Я был непосредственным участником этой истории, сначала в качестве обвиняемого, а затем и подсудимого.
Читать дальше →

Nokia N97 в рекламе и в жизни

Reading time1 min
Views2.2K


В рекламном ролике Nokia N97 — гладко работающий анимированный интерфейс, все крутится и летает. Чтобы увидеть как дела обстоят в реальной жизни посмотрите видео, очень смешно.

Комментарий на Ютубе: «У меня Nokia N97, и все в этом видео — правда.»
Читать дальше →

Экономим на GPRS-трафике с помощью Opera Mini Proxy

Reading time3 min
Views24K
Не так давно мне предстояло путешествие по рабочим делам в соседний регион. И, так как рабочие дела требовали постоянного использования интернета, пришлось задуматься о том, как можно сэкономить на недешевом роуминговом GPRS-трафике (UPD: способ также пригоден для скачивания прона без ведома родителей обхода ограничений корпоративных firewall).
Читать дальше →

ЭП — простой и быстрый способ получить доступ к госуслугам

Reading time4 min
Views65K
Токен электронной подписи для Госуслуги.ру (eToken Alladin)Сегодня существует как минимум два способа физлицу получить доступ к порталу Госуслуги.ру:
  1. Классический — прохождение регистрации: заполняем кучу форм, ждем кода активации, вводим его (описано много раз, например тут).
  2. Тот, о котором я хочу рассказать — с использованием электронной подписи: ничего заполнять не надо, не надо ждать кода активации, но способ стоит денег. И, похоже, работает пока только в Москве. (UPD февраль 2012: теперь работает не только в Москве; конкретного списка не нашел)
Как пользоваться госуслугами с помощью ЭП...

Ссылки в Windows, символьные и не только

Reading time3 min
Views397K

Предыстория


В своём топике "Впечатления от Яндекс.Субботника" хабрачеловек absolvo высказал удивление, что один из докладчиков не знал о том, что символьные ссылки есть и в Windows. Честно говоря, не знал этого и я, поэтому поинтересовался об этих ссылках в комментариях.

Думаю, то, что удалось выяснить, может показаться кому-нибудь полезным.
Читать дальше →

BrowserDeps — разные браузеры для разных соединений

Reading time2 min
Views2.4K
Добрый вечер! Так вышло, что я использую Opera Mini для сёрфинга через мобильный интернет и Firefox или Opera Mobile для Wi-Fi. Объясню это тем, что Opera Mini благодаря сжатию трафика, в том числе и картинок, довольно шустро работает через медленные соединения. А если учесть, что в Питере 3G ловится далеко не везде и совсем не так хорошо, как хотелось бы, то медленным мобильным интернетом приходится пользоваться везде, где нет хотспотов. А вот уж если посчастливилось присосаться к хотспоту, то Opera Mini уже не так хороша — через прокси трафик идет дольше, чем напрямую, да и JavaScript работает не полностью. Вот тут то навстречу и идут другие браузеры.

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

Обзор CyanogenMod

Reading time7 min
Views169K
Сегодня я расскажу вам немного о CyanogenMod. Это такая замечательная прошивка, основанная на исходном коде android. Официально разработка идет под вот этот вот список аппаратов, но на деле поддерживаемых девайсов намного больше. А все благодаря ребятам с xda-dev, которые портируют прошивку на свои телефоны.

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

Читать дальше →
1
23 ...

Information

Rating
Does not participate
Registered
Activity