Jump to content

RDP1974

Members
  • Content Count

    235
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by RDP1974

  1. RDP1974

    a pair of MM test

    ok I don't know how to use TParallel (setminworkerthread) with 16 threads, using beginthread on I9 results doubles (I suppose there is a limit of 8 threads in the pool of TThread) NumThreads := StrToInt(Th.Text); SetLength(ArrThreads, NumThreads); SW := TStopWatch.Create; SW.Start; for i := 0 to NumThreads - 1 do ArrThreads:=BeginThread(nil, 0, Addr(ThExecute), nil, 0, dm); WaitForMultipleObjects(NumThreads, @ArrThreads[0], True, Infinite); SW.Stop; lbxResults.Items.Add('All done in ' + SW.ElapsedMilliseconds.ToString + 'msec'); lbxResults.Items.Add('Tot hands ' + TotHands.ToString); lbxResults.Items.Add('Hands for second ' + (TotHands / SW.ElapsedMilliseconds * 1000).ToString); for i := 0 to NumThreads - 1 do CloseHandle(ArrThreads) but, you are allright, this is a useless benchmark, real app scenario should be a database, web app, etc. where using tthreadvar (TLS) come back to work, I'll stop to bother the forum cu
  2. RDP1974

    a pair of MM test

    also this is very interesting https://github.com/daanx/mimalloc-bench anyway I agree that's better to have a pascal native MM than a C based one https://github.com/d-mozulyov/BrainMM this was cool, but under Win64 is crashing somewhere
  3. RDP1974

    a pair of MM test

    but from Intel sources: similar or little bigger peak consumption and until 17x speedup, see test3 https://software.intel.com/content/www/us/en/develop/articles/controlling-memory-consumption-with-intel-threading-building-blocks-intel-tbb-scalable.html
  4. RDP1974

    a pair of MM test

    thanks, tomorrow will send info I wait embarcadero to update the linker to accomodate C $tls api, then we can use static libs without dll dependencyI
  5. RDP1974

    a pair of MM test

    5x quicker TParallel.For is from FastMM5 benchmark utility results DLL? Are from Intel libs, I did only wrappers are plain, optimized config, compiled dll from Intel TBB and IPP royalty free packages, no custom source code changes are done you can compile by yourself, I have put them in the repository because many people cannot build them, or not having the time https://github.com/oneapi-src/oneTBB/releases https://github.com/oneapi-src/oneTBB/archive/v2020.3.zip -> see folder TBBMalloc for the RTL simd patches: https://software.seek.intel.com/performance-libraries -> IPP run the utility to build a custom DLL and export: 'ippsZero_8u'; 'ippsCopy_8u'; 'ippsMove_8u'; 'ippsSet_8u'; 'ippsFind_8u'; 'ippsCompare_8u'; 'ippsUppercaseLatin_8u_I'; 'ippsReplaceC_8u'; for the ZLIB acceleration (3x-5x quicker than windows gzip, webbroker helper provided)-> extract IPP under Linux, see the readme how to patch zlib, take the patched sources and compile them with MS VC++ kind regards R. btw. I use them from a pair of years with my customers, never had a trouble
  6. RDP1974

    best component for web media player

    hello, do you suggest libraries, free or commercial, for: 1) play web formats (H264, VP8, Opus) in VCL component 2) use hardware acceleration as DxShow? 3) audio/video grabbing from TCamera or https://www.winsoft.sk/wcamera.htm? I'm evaluating FFMPEG Vcl Player and webRtc (http://www.flashavconverter.com/) (using custom player over ffmpeg) or https://tools.google.com/dlpage/webmmf/index.html using DxShow system TMediaPlayer. Any hints for best quality? Thanks R.
  7. in your opinion what is the best component /wrapper for camera grabbing to file using VP8/H264 (web) codecs?
  8. RDP1974

    best library for camera grabbing

    thanks for the kind answer
  9. RDP1974

    best library for camera grabbing

    record from camera saving in H264 file locally, without upload it to a media server
  10. RDP1974

    best component for web media player

    DSPack is old and not mantained I see coders moved to SDL2
  11. RDP1974

    UWP update support?

    hello, do you know if with Delphi is possible to do a UWP app that's updating byself using store/uwp/update API? (as all UWP store apps are doing) If yes, how to? Docs somewhere? thanks
  12. RDP1974

    UWP update support?

    I see all UWP's in windows store are updating automatically (privacy allow background app) or manually through "download and updates" section of the store so there should be API for update or is enough to upload a provisioned file with version inc?
  13. RDP1974

    best component for web media player

    hello, Guess I do a whatsapp client application through API I want play and record the camera audio/video Does the webRTC component offer this capability? Show video using VP8, H264 codec, record video from cam to file using VP8, H264 codec Or in your opinion is better to use FFMPEG wrapper to encode and to play? Your component plays video of accelerated VCL surface (opengl or directx)? Installing webRTC the default system codecs are updated? So is enough to use TMediaPlayer VCL for playing DXShow VP8, H264? Installing FFMPEG the default system codecs are updated? So is enough to use TMediaPlayer VCL for playing DXShow VP8, H264? I can install the https://www.webmproject.org/ie/ so to play through accelerated DxShow all the VP8 H264 codecs through mediaplayer
  14. hello, I want to use GPL sources into a closed source Delphi app, I cannot made the Delphi app under GPL because I use commercial components. Now: 1) if I link the objects $L from C GPL code, then I'm obliged to open and make all Delphi code GPL? 2) if I link a DLL from C GPL code, again here I need to open to GPL? 3) if I do a EXE from GPL code, then my closed code is Delphi and I use the first EXE with as a bridge with RPC or shared memory IPC dialogue; if so can I solve the problem of using GPL inside a commercial Delphi code? Thanks
  15. meantime I did a real test on FastMM5 -> under webbroker standalone webserver, running apachebench ab -n 10000 -c 100 -k -r http://192.168.1.150:8080/ -> FastMM5 executable is faster identical at Intel TBB (both 11k reqs/sec) but with a benchmark TParallel.For I get -> - Parallel For used : 1030549 ticks / BlockThreadContentionCounts: 0/2327401/0 ThreadContention testing reported critical areas - consider to increse the corresponding CFastMM_XXXXXBlockArenaCount constant - with TBB Parallel For used : 202024 ticks (5 times quicker on I9 8/16 core) in a single thread benchmark poker game -> 2M with TBB 2650k with FMM4 2750k with FMM5 so actually for single thread apps FMM5 wins by a few margin over FMM4 but for multithread should be tuned? I forward this post to the author of FMM.
  16. (I cannot understand why they don't invest in compiler and rtl that's the core value of the whole toolchain ... )
  17. for now I go with a pair of DLL from Intel TBB, IPP for mem manager and fillchar, move, pos avx enhanced if I do an error into asm conversion will be hard to catch! Too risky 🙂
  18. better to wait Embarcadero support for AVX into Delphi asm ... need too much time and easy to do errors
  19. To translate AVX-2 opcodes to Delphi we should use a object disassembler? And put hexadecimal DB values directly? Or translate by hand using intel manual and a calculator :-) Do you know if exists a similar tool as https://torry.net/files/vcl/experts/other/mmxasm.zip for AVX?
  20. Hi Arnaud, can I port your FPC mem manager under Delphi (Windows)? I'll translate AVX to Delphi ASM. But, I need your permission of course. Let me know. Roberto
  21. What happens when a GPL code violates a patent?
  22. a silly question, IMHO this forum layout should be optimized leaving more space for the topics
  23. hello, there is a bug in webbroker indy based under Linux, the Request.ContentFields is not filled correctly from client Ajax POST meanwhile works correctly in Windows Delphi 10.3.3
  24. RDP1974

    Experience/opinions on FastMM5

    Your talent is fantastic and so your code, but let me tell you a word about "TBB unusable" that it's the default optimize option on the whole Visual Studio C compiler and in main game engines... TBB and IPP also are used in Oracle Database, Adobe, Autodesk...
×