Рубрика «оптимизация» - 8

История: пишем скрипты на Go - 1

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

Почему Go хорош для скриптинга?

Читать полностью »

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

Читать полностью »

Как завести XCRemoteCache, или Кэши из топора - 1

Всем привет! 

Читать полностью »

Зарубежный опыт: как избавиться от 80% кода, увеличить скорость разработки и уменьшить количество ошибок - 1

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

Идея

В Java каждый объект - это заголовок и данные. В случае 64 битной машины заголовок равен 16 байтам. Также Java использует выравнивание объектов в памяти по 8 байт, следовательно размер объекта кратен 8 байтам. Поэтому обёртки примитивных типов такие как Integer, Double занимают по 24 байта, что весьма затратно для примитивных типов.

Проблема

Объекты в Java располагаются в куче, ссылки на них лежат в List<?>, в результате для int мы получаем 28 байт (если используется сокращение ссылок) вместо 4 и возможный разброс адресов объектов по памяти.

Читать полностью »

Идея для кода

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

Библиотеки

Читать полностью »

История о том, как одна программистка забавно обвела вокруг пальца кучу IT-контор, показав несостоятельность их HR-специалистов, которых и специалистами, в общем-то, назвать сложно. Боты какие-то.

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

Читать полностью »

Привет!

В одной из статей нашего блога мой коллега упоминал, что температура расплава в стальковше достигает ~1600 градусов Цельсия. В комментариях были вопросы, почему в таком случае сами ковши, которые, конечно, тоже сделаны из стали, не расплавляются. Отвечаю — все дело в футеровке – многослойной защите внутри ковша. На этом фото — одна из стадий ее изготовления.

Почему не плавится ковш и как мы учимся следить за жизнью футеровок - 1

Для полноты картины напомню, с чем сталкивается футеровка в течение своей короткой, но яркой жизни:

Почему не плавится ковш и как мы учимся следить за жизнью футеровок - 2

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

В предыдущих статьях я рассказал про этапы выполнения запросов, про статистику, про два основных вида доступа к данным — последовательное сканирование и индексное сканирование, — и перешел к способам соединения.

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

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js