Отговори на тема  [ 49 мнения ]  Отиди на страница Предишна  1, 2, 3, 4  Следваща
Молба за тест на PIC 
Автор Съобщение
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Нед Фев 16, 2014 3:36 pm
Мнения: 953
Мнение Re: Молба за тест на PIC
Нещо бъркаш в сметките - според мен е около 2 пъти по-бърз


Чет Май 05, 2016 11:14 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Молба за тест на PIC
Ако имаш математическата библиотека на сорс я постни, да тествам и с нея.

Не знам дали е 2 пъти, ама при мен излизат 137 милисекунди, а ти говориш за микро.... ?!?


Чет Май 05, 2016 11:21 am
Профил ICQ WWW
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Нед Фев 16, 2014 3:36 pm
Мнения: 953
Мнение Re: Молба за тест на PIC
при теб (както и при мен) функцията се вика 142'000 пъти

моята честота е 96, а твоята 80

моето време е 54 секунди, а твоето 137

смятам го на око като x2


Чет Май 05, 2016 11:26 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Молба за тест на PIC
DanielDimov написа:
при теб (както и при мен) функцията се вика 142'000 пъти

моята честота е 96, а твоята 80

моето време е 54 секунди, а твоето 137

смятам го на око като x2


Е, това е друго...

Библиотеката имаш ли я?


Чет Май 05, 2016 11:50 am
Профил ICQ WWW
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Чет Окт 02, 2008 10:24 pm
Мнения: 105
Мнение Re: Молба за тест на PIC
при мен,
tot=142000 (вътрешния цикъл го намалих на 1000)
времето е 11.238668s. за едно извикване на testCalcSpeed()

PIC32MX695F512L, 80MHz, без никакви прекъсвания


Чет Май 05, 2016 11:56 am
Профил ICQ
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Нед Фев 16, 2014 3:36 pm
Мнения: 953
Мнение Re: Молба за тест на PIC
relsys,

току-що проверих в настройките на проекта - всичко е по подразбиране освен едно - Floating point: FPv4-SP (Soft ABI). Библиотеката е стандартната математическа библиотека на GNU-C99.

Имам чувството, че за да получиш този резултат, си компилирал с опция за софтуерна емулация на float изчисленията... провери си настройките! Резултата на колегата Cino е това, което се очаква от този процесор.


Чет Май 05, 2016 12:50 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Юни 05, 2006 1:48 pm
Мнения: 4906
Местоположение: където небето среща земята, ракията е Jameson, а бирата Guinness
Мнение Re: Молба за тест на PIC
Един съвет, ако не са ти го дали вече, при положение, че ползваш флоат а не дабъл, много по-бързо би било да минеш в целочислени сметки :!:
ако имаш МЦУ с ФПУ е друга работа...
но пак да натъртя - точността не е много по различна с флоат и фисираната запетя

_________________
... ако трети ден не ти се работи... това означава, че е сряда !


Чет Май 05, 2016 12:52 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Молба за тест на PIC
DanielDimov написа:
relsys,

току-що проверих в настройките на проекта - всичко е по подразбиране освен едно - Floating point: FPv4-SP (Soft ABI). Библиотеката е стандартната математическа библиотека на GNU-C99.

Имам чувството, че за да получиш този резултат, си компилирал с опция за софтуерна емулация на float изчисленията... провери си настройките! Резултата на колегата Cino е това, което се очаква от този процесор.



Ами да, а и никога не съм я ползвал моята библиотека реално преди, не знам как се държи. При мен се наложи да махна 'f' в края на имената на sinf, cosf....


Чет Май 05, 2016 1:30 pm
Профил ICQ WWW
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Нед Фев 16, 2014 3:36 pm
Мнения: 953
Мнение Re: Молба за тест на PIC
Охоооо, :)

това което ти се струва съвсем безобидно (да махнеш f просто за да тръгне програмката) променя нещата доста - функциите без f са за двойна точност. Като ползваш тях при всяко викане на синус или косинус първо се преобразува аргумента към double, после се изпълнява функцията във варианта с двойна точност който е по-тежък и накрая резултата се преобразува обратно във float...

Явно затова при теб е 12 пъти по-бавно от колкото при колегата Cino


Чет Май 05, 2016 1:36 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11265
Местоположение: Добрич
Мнение Re: Молба за тест на PIC
DanielDimov написа:
току-що проверих в настройките на проекта - всичко е по подразбиране освен едно - Floating point: FPv4-SP (Soft ABI). Библиотеката е стандартната математическа библиотека на GNU-C99.


ко? не!
Не знам къде ги четете, ама няма таквизи неща...

Значи стандартната библиотека за математики е libm, но за АРМ специално не се ползва оригинала а порт... Най-често това е newlib
При мен е сравнително прясна версия (2.2.0) и като гледам какъв листинг сътвори дълбоко се съмнявам колко е оптимизирана... Масово твоя код (както и тригонометрията) викат __aeabi_fmul и __aeabi_fdiv за умножение и деление, а последното ми намирисва че пак са забравили да я портнат щото не виждам да ползват инструкции за деление изобщо.

Тъй че ако така съдиш за архитектурата, мнооо си се объркал...


Чет Май 05, 2016 2:22 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение Re: Молба за тест на PIC
От къде да дръпна библиотеката на сорс файл?


Чет Май 05, 2016 2:48 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11265
Местоположение: Добрич
Мнение Re: Молба за тест на PIC
https://sourceware.org/newlib/


Чет Май 05, 2016 2:50 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 11:53 pm
Мнения: 4582
Местоположение: Brussels / Пловдив
Мнение Re: Молба за тест на PIC
MYXATA написа:
Един съвет, ако не са ти го дали вече, при положение, че ползваш флоат а не дабъл, много по-бързо би било да минеш в целочислени сметки :!:
ако имаш МЦУ с ФПУ е друга работа...
но пак да натъртя - точността не е много по различна с флоат и фисираната запетя

За тригонометрични сметки ако се гони скорост ще има прекалено голяма грешка, пък и ще яде доста памет за да се вкарат в таблици всичките там sin/cos/tg функции.

Сега се присетих за една библиотека която може и да свърши работа:
http://dec64.com/
Само, че трябва да се портва ...

_________________
Мразя да мразя ...


Чет Май 05, 2016 2:57 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Юни 05, 2006 1:48 pm
Мнения: 4906
Местоположение: където небето среща земята, ракията е Jameson, а бирата Guinness
Мнение Re: Молба за тест на PIC
аз не казвам че е идеалното решение, ама требе да прецени кое му триява повечче - точност или бързодействие..
по-точно каква точност отнесено към какво бързодействие
иначе поне за синус/цосинус - те са периодични функции, и само за първия квадрант му трябват таблици :!:
тангенса за малки ъгли е = ъгъла..
и така нанатък и така нататък

ама както и да е, не искам да му разводнявам темата на човеко - мерете цикли на пикове до посиняване :)

_________________
... ако трети ден не ти се работи... това означава, че е сряда !


Чет Май 05, 2016 3:16 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Сря Фев 04, 2015 8:11 pm
Мнения: 610
Мнение Re: Молба за тест на PIC
Така поставена задачката няма да даде много полезни резултати. По-добре е да се анализира самата формула чисто математически , като необходими операции (мул,див,син,косин,тан,ехп и т.н.), брой итерации, минимално допустима точност и т.н. От там , според архитектурата на процесора, ще може лесно да се прецени от какъв порядък ще са нужните тактове, съответно и времето според честотата. Отделно ,че самата формула/алгоритъм може да се преобразува във вид удобен за конкретния контролер. Това ще даде границата за най-добрия резултат (най-лошия е безграничен).
В случая не се знае какво точно ще се изтества - контролера, компилатора или програмиста.


Чет Май 05, 2016 5:33 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 49 мнения ]  Отиди на страница Предишна  1, 2, 3, 4  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 6 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни