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

 
 
85 страниц V  « < 38 39 40 41 42 > »   
Reply to this topicStart new topic
> свежак KGP win32/arm/avr/mips/m68k, GNU tools chain
klen
сообщение Jun 19 2011, 15:22
Сообщение #586


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



предыдущий пост был для тек кто "в танке", для нормальных людей собрал в кучу сборки для хоста x86_64-linux-gnu
runtime сошки лежат в каждой сборке в ./lib64 - их надо прокешировать ldconfig'ом

arm-kgp-eabi http://klen.org/Files/DevTools/linux-x86_6...110619.tar.lzma

это для тех кто глумится с PIC32
mips-kgp-eabi http://klen.org/Files/DevTools/linux-x86_6...110619.tar.lzma

это для тех кто не "в танке" но упорно перед ним бежит и никак не может свернуть
i686-kgp-mingw32 http://klen.org/Files/DevTools/linux-x86_6...110619.tar.lzma
x86_64-kgp-mingw32 http://klen.org/Files/DevTools/linux-x86_6...110619.tar.lzma

это для КОМДИВЧИКА 5890ВЕ1Т от предыдущего поста отличается добавкой C++ и Fortran, все собрано с -march=r3000 -mhard-float -ffast-math , с такимиже ключами по умолчанию будет генерится новый код который ВЫ подсуните компиллеру.
comdiv32-kgp-elf http://klen.org/Files/DevTools/linux-x86_6...110619.tar.lzma

чето я седня разошелся...
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Jun 19 2011, 17:14
Сообщение #587


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(klen @ Jun 19 2011, 21:22) *


Ура! 08.gif Наконец-то arm-kgp-eabi научился компилять мои проекты! 08.gif Теперь у меня есть kgp под линуксомsm.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
klen
сообщение Jun 19 2011, 17:59
Сообщение #588


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(AHTOXA @ Jun 19 2011, 21:14) *
Ура! 08.gif Наконец-то arm-kgp-eabi научился компилять мои проекты! 08.gif Теперь у меня есть kgp под линуксомsm.gif

теперь точно пивопровод из Уфы ждать будем!

2_Ash_snz
товарищи! отзовитесь что у Вас получилось. Я с дуру в НИИСИ РАН позвонил, пообщался за 5890ВЕ1Т и комдивы вообще. говорят штатно нету С++/Fortran а теперь возможно есть 08.gif но нада проверить!
Go to the top of the page
 
+Quote Post
Ash_snz
сообщение Jun 21 2011, 04:05
Сообщение #589


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 12-05-11
Пользователь №: 64 958



Цитата(klen @ Jun 19 2011, 23:59) *
2_Ash_snz
товарищи! отзовитесь что у Вас получилось. Я с дуру в НИИСИ РАН позвонил, пообщался за 5890ВЕ1Т и комдивы вообще. говорят штатно нету С++/Fortran а теперь возможно есть 08.gif но нада проверить!
Вот это во истину влеикие новости!
Наша благодарность не знает границ, времени и пространства biggrin.gif . yeah.gif
Щас усё опробуем!

Основная задача - заставить считать и делать это - БЫСТРО!
Кстати. почему при работе с кешем оптимизации "-О", "-О2" и др. не работают? (они делают бинарник в 2 раза меньше и при переходе на С сегмент дазнт фанкшин)

зы мы бы с радостью подогнать проц, но увы...

2 не маленьких просьбы:

- 2 Klen, научите билдить библиотеки, а то понадобится другой/какой ключ - надо бы самим уметь.

- 2 All, Подкиньте ссылочку - где почитать про создание ld файлов?

Сообщение отредактировал Ash_snz - Jun 21 2011, 04:05
Go to the top of the page
 
+Quote Post
klen
сообщение Jun 21 2011, 07:10
Сообщение #590


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(Ash_snz @ Jun 21 2011, 08:05) *
Основная задача - заставить считать и делать это - БЫСТРО!

а че? пока даже считать не получается заставить wink.gif
с быстро ответ класический - какие бы у женщины небыли красивые сиськи - больше чем у нее при себе она вам дать не сможет wink.gif

Цитата
Кстати. почему при работе с кешем оптимизации "-О", "-О2" и др. не работают? (они делают бинарник в 2 раза меньше и при переходе на С сегмент дазнт фанкшин)

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

Цитата
зы мы бы с радостью подогнать проц, но увы...

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

Цитата
2 не маленьких просьбы:
- 2 Klen, научите билдить библиотеки, а то понадобится другой/какой ключ - надо бы самим уметь.
- 2 All, Подкиньте ссылочку - где почитать про создание ld файлов?

какие библиотеки?
билдятся просто - компиляете исходники библиотеки, собираете в либу с помощью утилиты ar. получаете файл с лиьы который можно подлинковывать к проекту
те которые libc и libm - они уже сбилдены, libc автоматом линкуется, для подлинковки libm воткните ключ -lm. но Вы это наверно и без меня знаеет.

ненавязчивая рекомендация: пигмеи!!! бросте винду и поставте линукс. будете как люди разработку вести.

по поводу ld - ВСЕ ТУТ!! http://sourceware.org/binutils/docs-2.21/ld/index.html

я так понимаю что пока Вы это все прочтете потухнет солнце а комдив устаеет. поэтому давайте я Вам помогу сделать ld скрипт - мне хочется на Вас потренироватся с мипсом и скорее узнать результаты, а если все заработает то будете уже сами разбиратся в природе работающих явлений.
сообщите карту адресного пространства проца, флеш то в нем есть или только ОЗУ?
почту тоже неплохо былобы узнать.
Go to the top of the page
 
+Quote Post
Ash_snz
сообщение Jun 21 2011, 08:58
Сообщение #591


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 12-05-11
Пользователь №: 64 958



Первый билд (mips-kgp-elf-comdiv32-x86_32-20110619.7z) ругается на чем свет:
Код
(standart input): Assembler message:
(standart input): Internal error!
Assertion failure inpute_file_open
../../../../../src/bu/gas/input-file.c line 167
please report this bug.

Второй билд (comdiv32-kgp-elf-20110619.tar.lzma) под линукс, по этому взяли с него только библиотеку(как собственно и с первого) увеличений в быстродействии не получили...

Цитата
а че? пока даже считать не получается заставить

считает. но хотелось бы быстрее wink.gif

зы make может влиять на сборку? а то у нас непойми откуда и зовется cs-make.

Сообщение отредактировал Ash_snz - Jun 21 2011, 09:00
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jun 21 2011, 09:47
Сообщение #592


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

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



target arm (AT91SAM7Sxxx), host x86: работает.
Память (с -flto):
new version:
Цитата
Program: 23464 bytes
(.text + .data + .bootloader)

Data: 2416 bytes
(.data + .bss + .noinit)

previous version:
Цитата
Program: 23668 bytes
(.text + .data + .bootloader)

Data: 2412 bytes
(.data + .bss + .noinit)


Last version without "-flto":
Цитата
Program: 29872 bytes
(.text + .data + .bootloader)

Data: 3520 bytes
(.data + .bss + .noinit)


Только сейчас заметил, что ПЗУ за счёт ОЗУ уменьшилось... не понимаю, что со скриптами.
upd: убрал свои ramfunc

Цитата
ненавязчивая рекомендация: пигмеи!!! бросте винду и поставте линукс. будете как люди разработку вести.

Я полагаю, поведение линкскрипта не меняется от операционной системы?

Сообщение отредактировал Genadi Zawidowski - Jun 21 2011, 10:32
Go to the top of the page
 
+Quote Post
klen
сообщение Jun 21 2011, 10:03
Сообщение #593


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(Genadi Zawidowski @ Jun 21 2011, 13:47) *
Я полагаю, поведение линкскрипта не меняется от операционной системы?

неа, не меняется, одна и таже сборка для разных хостов должна давать байт в байт одинаковый выход - алгоритмы теже, меняется экосистема в которой работаеш.

судя по цифрам LTO дает однозначный эффект в плюс.

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

я перед выкладыванием тестил и под виндой и под линуксом - формулы компилялись с использованием инструкций плавучки. может у Вас тот не мой компиллер
и так все на плавучке делат?

я пересоберу для винды полную сборку, первая была пробная

в любом случае необходим короткий контрольный пример.

ни make ни cs-make повлиять не могут - это всеголиг инструменты, повлиять может содержимое скриптов в которых написано как и что этим инструментам делать. посмотрите в логи компеиляции и линковке - там видны опции компилятора и линкера - это конечная информации которая влияет на выдаваемый код.
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jun 21 2011, 10:39
Сообщение #594


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

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Коллеги, а кто как делает ramfunc - и как оно с -flto уживается?

Как я понял, секции с именами отличающимися от стандартных при -flto не оптимизируются и не удаляются из результирующего файля (или пару раз копируются в .data).

У кого работает - как выглядит линкскрипт и имя секции?

Ещё, у кого-нибудь -flto с кортексами дружит? Как помирили?
Go to the top of the page
 
+Quote Post
klen
сообщение Jun 22 2011, 14:42
Сообщение #595


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



освеженная сборка для комдивчика на x86_32 масдай

http://klen.org/Files/DevTools/comdiv32-kg..._32-20110622.7z

тестовый проект на котором я проверял. для примера реализован функционал квадратурного ЧМ демодулятора.
в примере демострируется совместная компиляция С, С++ и Fortran исходника и залинковывание в один бинарь. Это демострация того что можно например перемешивать в одном проекте вычислительные библиотеки на фортране, GUI написанные на С++ и например системные и иные библиотеки реалисзованные на С. Какой другой не GCC компиллер позволит сделать теже действия ?
тамже есть листинги с выходным асмом - видно что компиляймый код и код libm собран с использованием инструкций плавучки. если и можно чтото сделать быстрее то только самому написать на асме элементраные функции - но чтото я сомневаюсь что есть более лучшие ряды или быстрые алгоритмы для их вычисления чем те что сейчас используются в libm

http://klen.org/Files/DevTools/comdiv32_c_...fortran_test.7z


есть вопросы по обходу глюков инструкции cvt если она идет за abs neg mov. но подозреваю что это старые кристаллы и может быть проблема сейчас не актуальна. в любом случае можно будет добавит окучивание этой неприятности если она вдруг окажется в наличии.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Jun 22 2011, 15:06
Сообщение #596


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(Genadi Zawidowski @ Jun 21 2011, 16:39) *
Ещё, у кого-нибудь -flto с кортексами дружит? Как помирили?

У меня не заработало. Размер убавился изрядно, но результат не дышит.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
klen
сообщение Jun 22 2011, 15:13
Сообщение #597


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(AHTOXA @ Jun 22 2011, 19:06) *
У меня не заработало. Размер убавился изрядно, но результат не дышит.

у меня тоже с LTO весело - кода становится больше но работает!!! sm.gif
я думаю что моя проблема в том что я все раздробил на отдельные библиотеки и потом их уже слинковываю в оконечный бинарь. кода в кучу валил вроде нормално было - но это не кашерно, проект должен иметь структуру и архитектруру даже на уровне файлов. ну и в раме конечно функции присутствуют.

... если полумать то что мешает из либ разложить функции на ровном столе и правильно отсортировать... нада смотреть код LTO!


неее... у меня нынче LTO не работает, при линковке выкидывает:
lto1.exe: error: FPA is unsupported in the AAPCS

у меня не собирается, у Вас собирается.. где разница вот в чем вопрос. я ликеру и компиллеру -flto добавил, мож чтот еще нада ?
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Jun 22 2011, 16:40
Сообщение #598


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(klen @ Jun 22 2011, 21:13) *
у меня не собирается, у Вас собирается.. где разница вот в чем вопрос. я ликеру и компиллеру -flto добавил, мож чтот еще нада ?

Ещё зачем-то надо передать линкеру уровень оптимизации:
Код
ifeq ($(USE_LTO),YES)
    CFLAGS    += -flto
    CXXFLAGS    += -flto
    LD_FLAGS    += -flto $(OPTIMIZE)
endif


Цитата(klen @ Jun 22 2011, 21:13) *
lto1.exe: error: FPA is unsupported in the AAPCS

lto1.exe?! А как же
Цитата(klen @ Jun 21 2011, 13:10) *
ненавязчивая рекомендация: пигмеи!!! бросте винду и поставте линукс. будете как люди разработку вести.

? biggrin.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
klen
сообщение Jun 22 2011, 16:40
Сообщение #599


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



не помогло
у меня также lto1 ругается - FPA is unsupported in the AAPCS
пытаюсь понять смысл и куда лезть

.. понял

с незапямятных времен в тестовом проекте остался ключ линкеру -mfpu=fpa, компиллеру когдато убрал а линкеру нет и оно работало до сейчас.
теперь lto1.exe просто падает sm.gif это уже приятней - хоть понятно что происходит, известно куда ковырять

Цитата
Ещё зачем-то надо передать линкеру уровень оптимизации:

попробывал на MIPS в частности на сборке для комдива - подтверждаю
линкеру зачемто это нужно - без проталкиваня ключа оптимизации размер наооборот больше чем без LTO
это надо будет происследовать...



ОБЪЯВЛЕНИЕ:
у меня на сервере накопилось очень много старья около 100 сборок, собираюсь все это почитить и вообще сайтом занятся и привести его в порядок. если кому нада какаянибудь из старых сборок то забирайте до выходных. на выходных уборка на винчестере будет.

FORTRAN в армах ктонибудь реально использует? были случаи?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jun 22 2011, 22:32
Сообщение #600


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

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



НАсчёт архива сборок... Где смотреть? На страничке http://klen.org/Projects/Embeded-gnu-tools...cc_archive.html только новости от 2006 года...

Маленький код с -flto с кортексом - у меня аналогично - в результат попадает только стартап, остальное, похоже, опитмизируется в ноль как суетное и бесполезное...
Go to the top of the page
 
+Quote Post

85 страниц V  « < 38 39 40 41 42 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


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


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