Цитата(AlexeyT @ Nov 17 2013, 11:14)

Эвона как! А ассемблерный листинг можете выложить? Допустим, ассемблерная реализация:
double a=2.123456789012345, b=-5.123456789012345, res; res = a+b;
в двух вариантах - при включенном и выключенном сопроцессоре.
Меня вот никак не отпускает ощущение, что ДОЛЖНО float ядро хоть как-то ускорять операции double.
Код
//----------------------FPU OFF ----------------------------------------//
0x08000512 4E93 LDR r6,[pc,#588] ; @0x08000760
0x08000514 6AB2 LDR r2,[r6,#0x28]
0x08000516 6AF3 LDR r3,[r6,#0x2C]
0x08000518 6A30 LDR r0,[r6,#0x20]
0x0800051A 6A71 LDR r1,[r6,#0x24]
0x0800051C F003F89B BL.W __aeabi_dadd (0x08003656)
0x08000520 6330 STR r0,[r6,#0x30]
0x08000522 6371 STR r1,[r6,#0x34]
//----------------------FPU ON -----------------------------------------//
0x08000522 4D94 LDR r5,[pc,#592] ; @0x08000774
0x08000524 ED950B0A VLDR d0,[r5,#0x28]
0x08000528 EC532B10 VMOV r2,r3,d0
0x0800052C ED950B08 VLDR d0,[r5,#0x20]
0x08000530 EC510B10 VMOV r0,r1,d0
0x08000534 F003F841 BL.W __aeabi_dadd (0x080035BA)
0x08000538 EC410B10 VMOV d0,r0,r1
0x0800053C ED850B0C VSTR d0,[r5,#0x30]
Вот пришлось посидеть и понять почему у меня ускорение произошло. Просто у меня кучка всякой математики и некоторые ее части производились во флоуте ( ну где дубль не нужен был),
вот поэтому прога и ускорилась в 3-4 раза. Так что народ прав. В чистом виде для дубля сопр бесполезен. Но при грамотном смешевании дубля и флоута эффект будет.