PLC Benchmarking

Have you determined if this is valid yet and, if so, how it is so blazingly fast? If that is accurate it is truly impressive.
No, at this moment I have merely done exactly the same tests as on the other PLCs.
As discussed in previous posts, I suspect that something is off. I suggested that the tests were modified, but until we agree on if/what must be modified all I can do is to keep the tests the same.
Apart from that, the 1515SP seems to be almost exactly half as performant as the 1517. The numbers match with a factor 2 over all the tests. At least this shows that the trigonometry test was done in the same way as on the other PLCs, with or without skewed results. I think that the test that is the most uniform is the bubble sort.

About the blazingly fast, I find that the 1515SP is remarkably performant for such a low price. It seems to be the overall conclusion that the "PLCs" that are based on PC hardware (Beckhoff, CodeSys, 1515SP) are significantly more performant than "classic" PLCs. One of the drawbacks of the 1515SP is the long statup time due to it being PC-based, even though it runs on Linux and not Windows.
 
A modified test of LD code, done with a Siemens S7-1515SP Open Controller (optimized block access)

Same as test done in post #64, except for tests 2-6 I changed the variables rData1 and rData2 from being TEMPs that are set in code, to INPUT variables with the values being transferred from the calling block. This to make it impossible for the compiler to consider the two variables as constants.

Result: No differences whatsoever.

I am still puzzled that a multiplaction takes longer than a trig function plus multiplication.
 
Interesting... I'm wondering how you would do this test on a controller like Beckhoff where the scan time is specified? Run the code and adjust the scan time until the processor core usage gets close to 100%?


I'd be curious to see the results of ControlLogix vs Beckhoff.


I would have thought that the Beckhoff would be able to "whip the ***" over control logics as you can configure some extremly quick scan rates in the beckhoff.
 
In all the plcs i have used (which are admittedly not that many) the watchdog time is adjustable. In the 1756-L71 I am testing with the watchdog time can be set to a max of 10 seconds. It comes out of the box set to 500 msec.

Keith
 
After seeing the differences in indexing arrays and ANDing, I think the test should be revised:

Math Test stays the same:
Code:
FOR i:=0 TO 99999 DO
    DINTResult:=(Real1*Real2);
END_FOR;
Indexing Test
Code:
FOR j:=0 TO 9999 DO
  FOR i:=0 TO 9 DO
    DINT1[i]:=DINT2[i];  'Arrays of 10 elements
  END FOR;
END_FOR;
Bitwise Operation
Code:
FOR i:=0 TO 99999 DO
    DINTResult:=i AND 2730; '* Every other bit for 12 bits
END_FOR;


Schneider M340 (BMX P34 2020 Unity Pro)
Math test 849ms
Index test 411ms
Bitwise test 32ms

Schneider M580 (BME P58 1020 Unity Pro)
Math test 702ms
Index test 376ms
Bitwise test 40ms


Schneider M580 (BME P58 2040 Unity Pro)
Math test 696ms
Index test 375ms
Bitwise test 41ms
 
Code:
BenchTest:=EditCase;

CASE BenchTest OF 
	1: 
		FOR i:=0 TO 99999 DO
	            DINTResult:=REAL_TO_DINT(Real1*Real2);
		END_FOR;
		
	2: 
		FOR j:=0 TO 9999 DO
 		     FOR i:=0 TO 9 DO
    			DINT1[i]:=DINT2[i];  //Arrays of 10 elements
 		     END_FOR;
		END_FOR;
		
	3:
		FOR i:=0 TO 99999 DO
    		    DINTResult:=DWORD_TO_DINT(DINT_TO_DWORD(i) AND dwTest  ); //Every other bit for 12 bits, dwTest is initial value 2730
		END_FOR;
END_CASE;


Omron NX1P2-9024DT1

Math test 8.1ms
Index test 3ms
Bitwise test 5ms
 
Last edited:
CompactLogix 5069-L310ER Rev.31.011

BitwiseTest = 2.6ms

BubbleSort = 76.1ms

IndexTest = 3.4ms

MathTest = 7.2ms
 
Last edited:
It does surprise me too since it came down to a decent $2100.00 vs. more than $16000 for a L85E. They do carry the same processing core though and it appears that the L310ER 1MB memory is sufficient for running the benchmark routines at 'blazing' speed.

On my desk, brand new out of the box and just 'flashed'; no IO or comms except for the EIP Online Studio5K.
 

Similar Topics

Apologies for not being the best IDEC programmer. I recently was doing some inspections on a site that had 3 FC6A IDEC processors. The issue is...
Replies
0
Views
13
"Hello! Good day! Excuse me, I have a question regarding the 1761-NET-ENI. RSLinx has already detected it but it's not connecting to the PLC...
Replies
1
Views
21
How to fix if appears code “$115 plc-restart running” on the screen OP17
Replies
1
Views
50
Good morning fellow sea captains and wizards, I am being asked to do the above and obtain 4 values from each slave, I know about the MRX and MWX...
Replies
19
Views
107
HI i would like to know how to get a variable that will store the amount of times a program has been executed. The issue is I have 3 DBs for 1 FB...
Replies
2
Views
53
Back
Top Bottom