[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

DCMTK performance problem



Hi all,

After updating my development PC from Ubuntu 12.10 to Ubuntu 14.10 LTS, I have observed a very severe degradation in the performance of "storescp" from the DCMTK package.

Sending 100 DICOM files to storescp took 25 seconds instead of less than 2 seconds in my previous version of Ubuntu:

>>>>>
# time storescu localhost 4242 ./MR*
real    0m25.627s
<<<<<

This led me to the discovery of a thread on the DCMTK forum that reported the same performance problem [1]. In this thread, it is suggested to disable the "setTCPBufferLength()" function. The corresponding patch is attached to this mail.

When applying this patch, the reported transfer times are as follows:

>>>>>
# time storescu localhost 4242 ./MR*
real    0m1.118s
<<<<<

I think that this patch might be extremely useful to be integrated in the official Debian DCMTK package.

Regards,
Sébastien-


[1] http://forum.dcmtk.org/viewtopic.php?f=1&t=4009
diff -u -r dcmtk-3.6.0/dcmnet/libsrc/dul.cc dcmtk-3.6.0.patched/dcmnet/libsrc/dul.cc
--- dcmtk-3.6.0/dcmnet/libsrc/dul.cc	2010-12-01 09:26:36.000000000 +0100
+++ dcmtk-3.6.0.patched/dcmnet/libsrc/dul.cc	2015-05-15 17:03:50.762451757 +0200
@@ -1840,7 +1840,7 @@
     }
 #endif
 #endif
-    setTCPBufferLength(sock);
+    //setTCPBufferLength(sock);
 
 #ifndef DONT_DISABLE_NAGLE_ALGORITHM
     /*
diff -u -r dcmtk-3.6.0/dcmnet/libsrc/dulfsm.cc dcmtk-3.6.0.patched/dcmnet/libsrc/dulfsm.cc
--- dcmtk-3.6.0/dcmnet/libsrc/dulfsm.cc	2010-12-01 09:26:36.000000000 +0100
+++ dcmtk-3.6.0.patched/dcmnet/libsrc/dulfsm.cc	2015-05-15 17:03:55.570451952 +0200
@@ -2417,7 +2417,7 @@
           return makeDcmnetCondition(DULC_TCPINITERROR, OF_error, msg.c_str());
         }
 #endif
-        setTCPBufferLength(s);
+        //setTCPBufferLength(s);
 
 #ifndef DONT_DISABLE_NAGLE_ALGORITHM
         /*

Reply to: