21 September 2010

sitting in great connectivity ...

... sure makes a difference, seemingly

I do daily checkouts from the FreeSwitch project, and run the same build script on a CentOS box inside our local network (which is nominally down a data link that is 3 x T-1 wide), and another that is up at a data center, and has the ability to sustain a 3.5 GByte/sec transfer rate indefinitely (it has been the disaster failover site for the periodic 'Victoria's Secret' soft pr0n 'strut their stuff' webcast)

I synchronized builds on the two boxes yesterday, so they happened to be at the exact same checkout from upstream's version control system level. Today, I opened a couple of consoles, and fired off the build commands within a second of one another. The first part of that script is to checkout current to HEAD, and then off into the builds. I've marked the two units in alternating colors so the comparisons stand out better

Unit A:

Unpacking objects: 100% (38/38), done.
From git://git.freeswitch.org/freeswitch
184f395..f7d16ec master -> origin/master
Updating 184f395..f7d16ec
Fast-forward
libs/freetdm/src/include/private/ftdm_types.h | 2 +-
src/mod/applications/mod_spandsp/mod_spandsp_fax.c | 6 +-
src/mod/codecs/mod_codec2/Makefile | 14 ++
src/mod/codecs/mod_codec2/mod_codec2.c | 161 ++++++++++++++++++++
src/mod/endpoints/mod_sofia/mod_sofia.c | 23 +++
src/mod/endpoints/mod_sofia/mod_sofia.h | 1 +
src/mod/endpoints/mod_sofia/sofia_glue.c | 21 +++
src/switch_ivr.c | 4 +-
8 files changed, 226 insertions(+), 6 deletions(-)
create mode 100644 src/mod/codecs/mod_codec2/Makefile
create mode 100644 src/mod/codecs/mod_codec2/mod_codec2.c

real 0m1.105s
user 0m0.425s
sys 0m0.090s
/home/herrold/vcs/git/freeswitch

Unit B:

Unpacking objects: 100% (38/38), done.
From git://git.freeswitch.org/freeswitch
184f395..f7d16ec master -> origin/master
Updating 184f395..f7d16ec
Fast-forward
libs/freetdm/src/include/private/ftdm_types.h | 2 +-
src/mod/applications/mod_spandsp/mod_spandsp_fax.c | 6 +-
src/mod/codecs/mod_codec2/Makefile | 14 ++
src/mod/codecs/mod_codec2/mod_codec2.c | 161 ++++++++++++++++++++
src/mod/endpoints/mod_sofia/mod_sofia.c | 23 +++
src/mod/endpoints/mod_sofia/mod_sofia.h | 1 +
src/mod/endpoints/mod_sofia/sofia_glue.c | 21 +++
src/switch_ivr.c | 4 +-
8 files changed, 226 insertions(+), 6 deletions(-)
create mode 100644 src/mod/codecs/mod_codec2/Makefile
create mode 100644 src/mod/codecs/mod_codec2/mod_codec2.c

real 0m15.607s
user 0m0.168s
sys 0m0.096s
/home/herrold/vcs/git/freeswitch

One box is running an 386 kernel, and the other x86_64; memory is somewhat smaller on the x86_64. The 'horsepower' of each is roughly the same

Unit A:

[herrold@centos-5 ~]$ ssh freeswitch.pmman.com uname -a
Linux freeswitch.pmman.com 2.6.18-194.11.3.el5PAE #1 SMP Mon Aug 30 17:02:48 EDT 2010 i686 i686 i386 GNU/Linux
[herrold@centos-5 ~]$ ssh freeswitch.pmman.com free
total used free shared buffers cached
Mem: 6226068 4427212 1798856 0 303156 3936312

Unit B:

[herrold@centos-5 ~]$ uname -a
Linux centos-5.first.lan 2.6.18-194.11.3.el5xen #1 SMP Mon Aug 30 16:55:32 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
[herrold@centos-5 ~]$ free
total used free shared buffers cached
Mem: 3072000 3036352 35648 0 291852 1790652

Unit A:

[herrold@centos-5 ~]$  ssh freeswitch.pmman.com dmesg \| grep -i bogo
Calibrating delay loop (skipped), value calculated using timer frequency.. 3990.15 BogoMIPS (lpj=1995079)
Calibrating delay using timer specific routine.. 3990.04 BogoMIPS (lpj=1995020)
Total of 2 processors activated (7980.19 BogoMIPS).

Unit B:

[herrold@centos-5 ~]$ dmesg | grep -i bogo
Calibrating delay using timer specific routine.. 6652.60 BogoMIPS (lpj=13305207)

Unit A:

[herrold@centos-5 ~]$ ssh freeswitch.pmman.com cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Xeon(R) CPU 5130 @ 2.00GHz
stepping : 6
cpu MHz : 1995.224
cache size : 4096 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl vmx tm2 ssse3 cx16 xtpr lahf_lm
bogomips : 3990.44

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Xeon(R) CPU 5130 @ 2.00GHz
stepping : 6
cpu MHz : 1995.224
cache size : 4096 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
apicid : 1
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl vmx tm2 ssse3 cx16 xtpr lahf_lm
bogomips : 3990.02

Unit B:

[herrold@centos-5 ~]$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz
stepping : 6
cpu MHz : 2660.050
cache size : 4096 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu tsc msr pae cx8 apic mtrr cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc pni est ssse3 cx16 lahf_lm
bogomips : 6652.60
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz
stepping : 6
cpu MHz : 2660.050
cache size : 4096 KB
physical id : 1
siblings : 1
core id : 0
cpu cores : 1
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu tsc msr pae cx8 apic mtrr cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc pni est ssse3 cx16 lahf_lm
bogomips : 6652.60
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

But ...

Unit A:

Wrote: /home/herrold/rpmbuild/RPMS/i386/freeswitch-sounds-0.0.20100921.git-1.i386.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.3898
+ umask 022
+ cd /home/herrold/rpmbuild/BUILD
+ cd freeswitch-20100921
+ '[' /var/tmp/freeswitch-0.0.20100921.git.root '!=' / ']'
+ rm -rf /var/tmp/freeswitch-0.0.20100921.git.root
+ exit 0

real 17m56.699s
user 13m18.982s
sys 3m10.880s

real 24m50.468s
user 18m2.521s
sys 4m56.827s
[herrold@freeswitch freeswitch]$

Unit B:

Wrote: /home/herrold/rpmbuild/RPMS/x86_64/freeswitch-sounds-0.0.20100921.git-1.x86_64.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.90424
+ umask 022
+ cd /home/herrold/rpmbuild/BUILD
+ cd freeswitch-20100921
+ '[' /var/tmp/freeswitch-0.0.20100921.git.root '!=' / ']'
+ rm -rf /var/tmp/freeswitch-0.0.20100921.git.root
+ exit 0

real 27m27.666s
user 8m27.160s
sys 3m25.909s

real 48m25.064s
user 11m34.027s
sys 5m15.264s
[herrold@centos-5 freeswitch]$

That is, the older, 2GHz Xeon is running away from the newer 2.6 GHz Core Duo. Quite the discrepency there, but the numbers don't lie. Perhaps due to the local load of being a X-desktop on 'centos-5' [no local xen domU are presently running on it], and NOT running X on the remote server. Interesting 'food for thought' of a problem to research as to the why's and wherefore's on causation