May. 16th, 2022

MLX90640

May. 16th, 2022 02:14 pm
eddy_em: (Default)
Что-то то ли датчик мне бракованный попался (но за такие-то баксы! ладно бы он 50 рублей стоил, но не 50 баксов же!): чуть поработает и перестает выдавать ACK при передаче адреса по I2C, надо будет глянуть осциллографом, что там в шине творится.
Сижу, разбираюсь с даташитом. Похоже, таки не получится мне без чертовых флоатов обойтись ☹
Там еще и неплохой такой объем оперативки нужен для хранения калибровочных данных. В общем, лучше всего было бы сразу начинать работу с этим датчиком на одноплатнике, но раз уж начал мучать с STM32F103 — домучаю до конца… Если еще экранчик прикрутить, можно будет эдакий простой тепловизор сварганить. Правда, чтобы картинку получить, нужно столько нетривиальных вычислений сделать — жуть просто!
eddy_em: (Default)
Решил вот попробовать быстродействие поиска простых чисел методом "решета". Получилось как-то совершенно медленно. Я построил битовую маску, где каждому простому числу соответствует единичный бит. Вот такой говнокод )
Выделил 1ГБ оперативки (т.е. поиск простых от 2 до [2³³-1]). На простые от 2 до 63 ушло 17.3 секунды. Остальные простые в 8 потоков (т.к. здесь уже смело можно openmp использовать: шанс на коллизию сильно снижается) считаются еще 183 секунды. Если учесть, что "в лоб" все это вычислялось 3.5 минуты, похоже, таки gcc на всякий случай воткнул синхронизацию при выставлении маски.

April 2025

S M T W T F S
  1 23 45
67 89101112
13141516171819
20212223242526
27282930   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 23rd, 2025 03:41 am
Powered by Dreamwidth Studios