реклама на сайте
подробности

 
 
4 страниц V  « < 2 3 4  
Reply to this topicStart new topic
> профилирование и оптимизация на arm
sergeeff
сообщение Mar 7 2011, 19:22
Сообщение #46


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(bzzz77 @ Mar 7 2011, 21:45) *
я разве сказал "сделано неправильно"? уже читайте, а не додумывайте.


Имеющий уши - да услышит.

Напоследок, утомили вы меня. Ваши слова

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


Finito!
Go to the top of the page
 
+Quote Post
sasamy
сообщение Mar 7 2011, 19:29
Сообщение #47


Знающий
****

Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858



Цитата(sergeeff @ Mar 7 2011, 22:22) *
Напоследок, утомили вы меня. Ваши слова
Finito!


2sergeev - да никто вам не мешает воткнуть осциллограф - расслабьтесь, пользуйтесь на здоровье sm.gif Вообще забудьте что тут говорили, вы - самый лучший.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 7 2011, 19:31
Сообщение #48


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(bzzz77 @ Mar 7 2011, 22:02) *
хорошо, покажите мне счетчик обращений ядра к sdram. с меня спасибо и респект.

Если все же вернуться к нашему барану - LPC2478, то ситуация с работой SDRAM чуть менее чем полностью очевидна: так как кэш отсутствует, для случайного доступа она практически непригодна, но зато ее можно использовать для буферизации всего и вся. Каких-либо специальных инструментов для изучения ее поведения тоже не нужно, достаточно почитать документацию и потратить пару-тройку часов на написание тестовых программок, если уж сильно захочется. LPC2478 - это весьма маленький процессор, не нужны ему счетчики.
Go to the top of the page
 
+Quote Post
bzzz77
сообщение Mar 7 2011, 19:54
Сообщение #49


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 16-01-11
Пользователь №: 62 260



Цитата(aaarrr @ Mar 7 2011, 22:31) *
Если все же вернуться к нашему барану - LPC2478, то ситуация с работой SDRAM чуть менее чем полностью очевидна: так как кэш отсутствует, для случайного доступа она практически непригодна, но зато ее можно использовать для буферизации всего и вся. Каких-либо специальных инструментов для изучения ее поведения тоже не нужно, достаточно почитать документацию и потратить пару-тройку часов на написание тестовых программок, если уж сильно захочется. LPC2478 - это весьма маленький процессор, не нужны ему счетчики.


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


ps. процессору счетчики точно не нужны. счетчики могут быть нужны разработчику
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 7 2011, 20:08
Сообщение #50


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(bzzz77 @ Mar 7 2011, 22:54) *
...нужно потратить время на тесты типа "кладем вот эту структуру в sram - меряем, теперь повторим для другой структуры"

Зачем решать задачу с конца? Сразу кладем все со случайным доступом в SRAM, буферы - в SDRAM. А вот если SRAM не хватает, тогда только нужно начинать думать, перекладывать и тестировать.
Go to the top of the page
 
+Quote Post
bzzz77
сообщение Mar 7 2011, 20:11
Сообщение #51


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 16-01-11
Пользователь №: 62 260



Цитата(aaarrr @ Mar 7 2011, 23:08) *
Зачем решать задачу с конца? Сразу кладем все со случайным доступом в SRAM, буферы - в SDRAM. А вот если SRAM не хватает, тогда только нужно начинать думать, перекладывать и тестировать.


уже влазит с трудом, уже usb/eth-ram задействованы. уже буферы для fat в sdram. а функционал еще хочется добавить.
Go to the top of the page
 
+Quote Post
igorsk
сообщение Mar 7 2011, 23:28
Сообщение #52


Частый гость
**

Группа: Участник
Сообщений: 84
Регистрация: 22-03-10
Пользователь №: 56 131



DMA используется? В LPC имеется поддержка memory-to-memory и scatter/gather трансферов. В декодировании MP3 не очень вижу как это может помочь, но вдруг.
Go to the top of the page
 
+Quote Post
bzzz77
сообщение Mar 8 2011, 04:44
Сообщение #53


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 16-01-11
Пользователь №: 62 260



Цитата(igorsk @ Mar 8 2011, 02:28) *
DMA используется? В LPC имеется поддержка memory-to-memory и scatter/gather трансферов. В декодировании MP3 не очень вижу как это может помочь, но вдруг.


SG видел, полезная штука. хотел попробовать SG для вывода буферов в DAC. касательно mem2mem не уверен - похоже helix'у важнее иметь временные переменные в sram, а собственно mp3 данные можно положить в sdram без особенной потери в производительности.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Mar 8 2011, 21:54
Сообщение #54


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(ar__systems @ Mar 7 2011, 21:37) *
Уважаемый, вы меня пугаете. Вам 10ый раз говорят, эти счетчики не просто регистры процессора, их железо само обновляет. Решение это ХАРДВЕРНОЕ.
Осталось только научиться все эти ХАРДВАРДНЫЕ счетчтики чисто программно считывать в строго детерминированные
моменты времени, особенно при наличии OS...
Здесь без Event System Вы мало что точно намеряете.

Go to the top of the page
 
+Quote Post
bzzz77
сообщение Mar 9 2011, 05:05
Сообщение #55


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 16-01-11
Пользователь №: 62 260



Цитата(singlskv @ Mar 9 2011, 00:54) *
Осталось только научиться все эти ХАРДВАРДНЫЕ счетчтики чисто программно считывать в строго детерминированные
моменты времени, особенно при наличии OS...
Здесь без Event System Вы мало что точно намеряете.


там все несколько проще. на каждый счетчик есть счетчик превышения по достижению которого срабатывает прерывание и регистрируется адрес, на котором это случилось. от ОС ничего не требуется. от профайлера - только настроить события, счетчики превышения и регистрировать адреса. ну и потом соотнести эти адреса с функциями-инструкциями. так работает oprofile, а на его основе - amd code analyst. и этого хватает для нормального профилирования.
Go to the top of the page
 
+Quote Post
sonycman
сообщение Jun 15 2011, 17:12
Сообщение #56


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(bzzz77 @ Mar 8 2011, 00:11) *
уже влазит с трудом, уже usb/eth-ram задействованы. уже буферы для fat в sdram. а функционал еще хочется добавить.

Это вам 90 килобайт оперативки не хватило для MP3 декодера? Откуда такие запросы-то?
Люди вон на 50 килобайтах справляются... laughing.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 15 2011, 17:44
Сообщение #57


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



QUOTE
Это вам 90 килобайт оперативки не хватило ...
Люди вон на 50 килобайтах справляются...


Ололо, давайте померяемся, кому сколько надо wink.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
sonycman
сообщение Jun 15 2011, 18:55
Сообщение #58


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(Rst7 @ Jun 15 2011, 21:44) *
Ололо, давайте померяемся, кому сколько надо wink.gif

Ничего смешного не вижу wink.gif
Сам рассчитываю на 24 килобайта для декодера, плюс буфера для ЦАПа и файловые - в 32 кб надо бы уложиться rolleyes.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jun 15 2011, 19:14
Сообщение #59


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



QUOTE
Ничего смешного не вижу


А я не в Ваш огород wink.gif Я чисто топикстартера, ага wink.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post

4 страниц V  « < 2 3 4
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 16:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.0147 секунд с 7
ELECTRONIX ©2004-2016