-
Data: 2023-05-23 15:10:16
Temat: Re: Dziwny problem z kodem w C (gcc mips/pic32)
Od: JDX <j...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 22.05.2023 21:30, J.F wrote:
> On Mon, 22 May 2023 18:29:29 +0200, heby wrote:
>> On 22/05/2023 18:08, J.F wrote:
[...]
>>> A na macierzach zespolonych operuje już równie szybko jak Fortran,
>>> czy nie bardzo ? :-P
>>
>> Wrappery na BLAS/LAPACK są bardzo cienkie. Nie wiem w jaki magiczny
>> sposób miały by liczyć coś wolniej, keidy 99.99% kodu to ten sam kod co
>> w Fortranie.
>
> Być moze te wrappery obchodzą problemy, ale ... Fortran potrafi
> operowac na liczbach zespolonych, bo to jego natywny typ.
> W c++ to typ skonstruowany z innych. Jako, że było za wolno,
> to nawrzucano inline.
> Ale nadal, jak gdzies jest zwracana wartosc zespolona, to fortran
> używał dwóch rejestrów, a c++ ... nie musi budować obiektu?
Nie wiem tego, ale idę o zakład, że we współczesne C (od C99) i C++
(chyba od C++98), czyli tak mniej więcej od ćwierćwieku operują na
liczbach zespolonych nie gorzej niż Fortran. W C wprowadzono wtedy
słówko kluczowe _Complex, natomiast w C++ jest to zrobione na
templejtach. A strukturę w tych językach można przekazać/zwrócić do/z
funkcji w rejestrach ,,od zawsze", o ile się tam zmieści (AFAIR
kompilator robi to po prostu automatycznie, w papierach trzeba
sprawdzić), a jak nie, to przez stos. Z drugiej strony zastanawiam się,
jak program napisany w Fortranie uruchomiony np. na 32-bitowym Intelu
mógłby przez rejestry zwrócić kompleksa gdzie re i im są to 128-bitowe
floaty (albo 256-bitowe). Rejestrów zabraknie. :-)
Następne wpisy z tego wątku
- 23.05.23 15:27 JDX
- 23.05.23 15:35 Grzegorz Niemirowski
- 23.05.23 15:56 heby
- 23.05.23 16:00 heby
- 23.05.23 16:11 Grzegorz Niemirowski
- 23.05.23 16:22 heby
- 23.05.23 16:35 Grzegorz Niemirowski
- 23.05.23 16:52 heby
- 23.05.23 17:21 Grzegorz Niemirowski
- 23.05.23 17:26 titanus
- 23.05.23 18:19 heby
- 23.05.23 18:32 heby
- 23.05.23 19:00 Grzegorz Niemirowski
- 23.05.23 19:15 heby
- 23.05.23 19:28 Grzegorz Niemirowski
Najnowsze wątki z tej grupy
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
- Dziwny schemat wzmacniacza m.cz.
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- CGNAT i ewentualne problemy
- wzmacniacz mocy
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- Propagation velocity v/c dla kabli RF
- Jakie natynkowe podwójne gniazdo z bolcem (2P+PE)
- Czujnik nacisku
- Protoków komunikacyjny do urządzenia pomiarowego
Najnowsze wątki
- 2025-06-19 Gdynia => Sales Executive / KAM <=
- 2025-06-19 Warszawa => IT Business Analyst (projects in the telco sector) <=
- 2025-06-19 Lublin => Programista Delphi <=
- 2025-06-19 Warszawa => Scrum Master <=
- 2025-06-19 Warszawa => Solution Architect <=
- 2025-06-19 Warszawa => Software Solution Architect <=
- 2025-06-19 Zakrzewo => Konsultant SAP HCM <=
- 2025-06-19 Zakrzewo => SAP HCM Consultant <=
- 2025-06-19 Poznań => SAP HCR Consultant <=
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-18 Poseł KO mecenas Giertych został pouczony o obowiązującym prawie [z SN]
- 2025-06-18 112
- 2025-06-18 Poznań => MLOps Engineer <=
- 2025-06-18 Gdańsk => Mainframe (z/OS, Assembler) Developer <=