-
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
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
Najnowsze wątki
- 2025-02-17 EPS12V
- 2025-02-18 Kraków => Spedytor Międzynarodowy <=
- 2025-02-18 Policja nie może się dowiedzieć komu administrator wynajmowal garaż.
- 2025-02-18 Bursztyn się znalazł
- 2025-02-18 Ruski samolot z turystami nielegalnie internowany po awaryjnym lądowaniu w Poznaniu. Czemu o tym nic nie piszecie pieniacze?!?
- 2025-02-18 Obcokrajowcy w bankach
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security