This project has moved. For the latest updates, please go here.

AdoAdapter have problem with 5 PMUs connected at data rate 50 frames/sec.

Feb 1, 2012 at 8:12 AM

Hi everybody !

I installed the OpenPDC v1.4 SP1 (1.4.110) 64 bits on Windows 7 64 bits.

The OpenPDC can receive configuration and data from the PMU. i configured the AdoAdapter to save data to mysql database (mysql database is put on Ramdisk) the OpenPDC work well with 5 PMUs connected (the PMUs working at 10 frames/second of Data Rate). when i increase the Data Rate to 50 frames/second for only one PMU (4 PMUs remain working at 10 frames/second) the problem appear: the OpenPDC Console appear the warning that:

"[Adoadapters] there are xxxxxx unprocessed measurements in the output queue"  (xxxxxx is the number of unprocessed measurements) when the number of the unprocessed measurements is 500000 the output queue is dumped (the OpenPDC consolse alert that " [Adoadapters] system exercised evasive action to converse memory and dumped 500000 unprocessed measurements from the output queue :( ".

this problem appear but the server use about 35% of CPU only.

My server:

OS:  Windows 7 64 bits.

CPU: Corei 7 (4 cores, 8 threads).

Ram: 24GB (15GB is used for Ramdisk, remain 9GB for system running)

 

 

Please help me to solve this problem.

Thank in advance any help.

 

GiaLong

Coordinator
Feb 1, 2012 at 3:17 PM

What is the database you are connected to? From the error messages, it looks like it can't keep up...

You may have to opt for a different method for injecting records (e.g., BULK INSERT) in order for your database to keep with 50 samples per second...

Ritchie

Feb 2, 2012 at 9:00 AM

Thank you so much for your reply, Ritchie !

"What is the database you are connected to?"

- i'm using Mysql Database for Windows and i put the OpenPDC on Ramdisk to improve the performence.

i don't understand your mean with:

"You may have to opt for a different method for injecting records (e.g., BULK INSERT) in order for your database to keep with 50 samples per second..."

i'm using the AdoAdapter (the OpenPDC installation version) to insert data from the OpenPDC to Mysql Database so how can i change the way that the AdoAdapter insert data to Mysql database ?

i ask above question because i see that the Mysql Database don't use so much CPU (about 30% of CPU for Mysql and the CPU is used totally about 50% ) but the data in Output Queue is dumped so i think that the AdoAdapter is not enough speed to save all data in Output Queue to Mysql Database.

 

Please tell me some suggestion to fix this problem, Ritchie !

Thank in advance !

GiaLong

Coordinator
Feb 2, 2012 at 1:00 PM

Hello GiaLong,

I believe that the RAM disk would be better suited for MySQL than the OpenPDC. Is MySQL on the RAM disk, or is it just the OpenPDC?

Stephen

Feb 3, 2012 at 3:09 AM

Thank you so much for your reply, Staphen !

 

i installed the OpenPDC on hard disk, i put the Mysql database on RAM disk and i use the AdoAdapter to save data to Mysql Database. (the RAM disk can be faster than the Hard disk from 10 to 70 times, i read this on some forum).

i tried to test with my system on some case like below:

1. only one PMU connected: the PMU work at 50 frames/second of Data Rate => the System work well.

2. with 2 PMUs connected: the first one work at 10 frames/second of Data Rate, and the second one work at 50 frames/second of Data Rate => the problem appear.

3. with 5 PMUs connected: all of 5 PMUs work at 10 frames/second of Data Rate => the system work well ( all of data is sent by AdoAdapter have been saved to the Mysql Database).

 

this is my situation.

Please help me to solve this problem.

Thanks in advance any help !

GiaLong

 

Coordinator
Feb 3, 2012 at 6:34 PM

I just released yet another AdoOutputAdapter Hotfix which uses a bulk insert to reduce the number of SQL queries it sends to the database engine. I've seen a significant performance improvement when using this new version of the adapter with MySQL. I'm hoping that it will solve your problem.

And, of course, you can get the latest version of the AdoOutputAdapter Hotfix from the Downloads page.

Stephen