数字X射线:沿Elbrus漫步

哈勃!上次我写了一个有关印刷电路板X射线检查项目现在我们已经取得了很大的进步,该软件的工作原型加上Elbrus中的“用棍子戳”。我想告诉你这种经历。



图片



介绍



在项目开始时,我们设法找到了额外的资金,主要条件是完整的跨平台软件,包括对家用处理器的支持。当时,台式机最有生产力的选择是Elbrus 8C(虽然仍然存在,但8CB尚未出现)。我们直接从MCST购买了两个Elbrus 801-RS站。现在,他们的费用已在网站上显示出来,一年前价格要贵一些。



, – . NDA, ( ). , – . . / , .





2020 – : (, ). Linux. , – . .



– , Fly , . , , .



– USB , . - .



. 4.0, 5.0rc2 – , «» . VLIW . .



UPD: 6.0. C++20 Linux, — .





++, 14- , CUDA Vulkan , OpenGL AMD . – OpenGL 3.1, QT 5.11.



– - . , «» , . .



, (titovmaxim, Unicore Solutions)

– . – . . TLDR: .



– . Ethernet 1 , GigE Vision. , ( Aravis) , .



, , 1 , . , . . , , . .



OpenGL, .. , . , , , , , . OpenGL, CUDA, .



3000x3000 16 (AMD R5) ~33 . , -. , . , x86 GeForce RTX 2070 Max-Q ~2, .



– RS232, Web UVC, .



Qt 5.11 QML . . , "-", . , , 5.11 «» .



, C++ 14. C++ QML , c Flow.



Flow



— , boilerplate . ++, , , , . , , OpenGL, « ». ( update) / , ( ), Qt. – subscribe/unsubscribe , , :) ReactiveX, , .



- ( C++ ), QMetaObject. , QML (, WPF C#), , QML QVector diff’ ( QAbstractItemModel), / .



C++ 17. C++ 14 , , . , . , GCC MSVC. auto . this . , . , ;)



. . , . , . , -fnon-call-exceptions .



, "" Linux x86 . .



OpenCV



, «» - OpenCV 3.2. , “” – . . OpenCV 8 (1300 ) Intel core i7 (2600 ) / openCV:



openCV vs Intel i7
, 5.0rc2/ -8/ OpenCV 3.2 8.1/ -8/ OpenCV 3.2 1.6/ Intel Core i7 7700/ OpenCV 3.2 Windows 10/ Intel Core i7 9750H/ OpenCV 3.2 Windows 10/ Intel Core i7 9750H/ OpenCV 4.4
5x5, 3000x3000, 16S 35 334 99,7 94 105,9
5x5, 3000x3000, 16U 244 280 - 98 106,5
5x5, 3000x3000, 32F 32 271 23,9 24 11,4
5x5, 3000x3000, 16S 15,3 257 36,3 35 5,7
5x5, 3000x3000, 16U 184 251 - 12,5 40
5x5, 3000x3000, 32F 14,5 222 8,1 7,7 6,2


OpenCV EML (. , VLIW ). EML . , . – .



– , 2 (16S) i7, 2 (32F). OpenCV 20 . , 16U .





. (, ) , , . .



– , - .



, . .




All Articles