суббота, ноября 02, 2013

Что сказал Рихтер

Давно обещала рассказать о лекции Рихтера про потоки. Такие лекции - это не что-то редкое и удивительное, Рихтер - совладелец компании Wintellect и они за деньги прочтут эту лекцию всем желающим. Если у вас есть возможность на его занятия прийти - очень рекомендую.
Ценны они в первую очередь возможностью задать Рихтеру вопросы и интересными примерами кода, однако были высказаны несколько полезных мыслей. Итак, Рихтер рекомендует. (Никаких откровений, впрочем)
Не надо плодить потоки, потому что переключение контекстов - вещь дорогая. Разумно делать столько потоков, сколько в машине есть ядер.
Если уж поток создали, постарайтесь его не блокировать без крайней необходимости. Речь идет не только о мьютексах, но и о Join, Sleep.
 
Не надо играть с thread pool. "Leave the thread pool alone".

Ну а также volatile в C# и в C++ разные. В C# volatile "cannot cache and fence", а в C++ только "cannot cache".

среда, октября 16, 2013

Начался новый курс по машинному обучению

Эндрю Нг снова читает курс по машинному обучению. Теперь с русскими субтитрами. Машинное обучение (machine learning) очень востребовано среди работодателей, оно используется в современных поисковых движках, например. В 2007 году было первым в списке 12 IT skills that employers can't say no to и с тех пор мало что изменилось.