Thanks, Helen. Please see my replies inline. 
I am sure it is not 3.0 specific, 2.5 is the same. and the main issue is 
scalability, sequential transaction performance is actually pretty good, 
comparable to ESE store on windows I was comparing firebird against.  but when 
running multiple transactions in parallel, ESE perf increased from 4 tx/sec to 
26 tx/sec (128 byte/record, 200 records per transaction, 6 transaction threads 
on 6 cores, which I expect the best, logical cpu/ht is not very useful 
performance-wise), while firebird decreased. These transactions do not 
write-conflict with each other. 
The basic flow of our code is like, first the main function creates a database 
connection, and spawns multiple threads, passing in the database connection. 
Each thread does this: create a transaction using the db connection, do 
insertion of data, and commit the transaction. Each thread measures its own 
elapsed time. 

To: firebird-support@yahoogroups.com
From: firebird-support@yahoogroups.com
Date: Wed, 15 Jun 2016 19:04:33 +1200
Subject: Re: [firebird-support] performance issue with firebird 3.0 embedded on 
linux














 

 



  


    
      
      
      Wednesday, June 15, 2016, 5:58:39 PM, Karol B. wrote:



> test without details say nothing to me

> 1. Did you compare results with e.g. FB2.5 in on the same maschine with same 
> configuration (FBConfig)
My project migrated from FB2.5 to FB3.0. I am pretty sure it is not 3.0 
specific. 


> 2. What is your page size and type of HDD?
SSD. 512GB Samsung EVO 850. The file system is ext4, block size 4096. 



> 3. Do you have BOST feature enabled on CPU and HT? -- Boost?
Yes, Turbo boost and hyper threading are enabled. 


> 4. Did you compare results on GLOBAL TEMPORARY TABLE - i know this is not the 
> same but can show some info?
Could you give me some details about how to use GLOBAL TEMPORARY TABLE? 



> 5. How do you test this times about your threads and how do you start them?
I used the monolithic time in code i.e. clock_gettime(CLOCK_MONOTONIC, &ts)  on 
each thread to calculate the elapsed time. should be high resolution. 



> 6. Exact version of FB

Firebird-3.0.0.32483-0


and 7. If on Windows, how did you go about configuring CpuAffinityMask?

  - which processors did you intend to set it for and what was the value you 
configured?
It's on Linux, I read from document that multiple processors are by default 
enabled. but I anyway set CpuAffinityMask to 4095, but it seems no change to 
performance. 


  - did you try to do this configuration whilst an engine instance was running, 
without restarting?
No. each time I change configuration, I restart the program. 



HB






    
     

    
    






  
                                          
  • Re: [firebird-... liviuslivius liviusliv...@poczta.onet.pl [firebird-support]
    • Re: [fire... Helen Borrie hele...@iinet.net.au [firebird-support]
      • RE: [... chen hsu chen...@outlook.com [firebird-support]
        • R... 'livius' liviusliv...@poczta.onet.pl [firebird-support]
          • ... chen hsu chen...@outlook.com [firebird-support]
            • ... hv...@users.sourceforge.net [firebird-support]
              • ... chen hsu chen...@outlook.com [firebird-support]
        • [... ma_go...@yahoo.com [firebird-support]
          • ... chen hsu chen...@outlook.com [firebird-support]
        • R... Mark Rotteveel m...@lawinegevaar.nl [firebird-support]
          • ... chen hsu chen...@outlook.com [firebird-support]

Reply via email to