PureBytes Links
Trading Reference Links
|
I used to work on a high end mainframe transaction processing OS (think very quick, fast banking transactions). We stayed single-threaded for performance reasons .. counter-intuitive at first, but as Thomasz says, thread switching can be a real overhead. Even though we were processing 1000s of trasactions and terminals, we could switch our internal task workload much faster than using primary OS tasking system we operating on top of.
However .. we eventually did have to accommodate the 'dual core' of the day, as cpu power was expanding horizontally .. ie, there were more CPU's being added in parallel. So we kept our high perf single threaded model .. but ran several instances of the core system under the covers ...
The parallel for amibroker may be the same. Especially for RealTime feeds.
I often AMI top out at 50% on my dual core AMD, indicating a single-thread model... and it can be sluggish from time to times (although the latest IB plugin has eased CPU substantially)
Perhaps if each RT chart window had it's own thread it may be better able to use both CPUs.
Just my 1 1/2 cents worth.
----- Original Message ----
From: Tomasz Janeczko <groups@xxxxxxxxxxxxx>
To: amibroker@xxxxxxxxxxxxxxx
Sent: Wednesday, November 22, 2006 4:39:04 PM
Subject: Re: [amibroker] Re: Can anyone explain Why AmiBrokers instead of Metastock
Hello,
To take advantage of any CPU feature the program has to be
specifically
built for given feature.
No gain is "automatic". You need to code specifically for
given feature.
When it comes to 64 bit - the source code had to be
adjusted
in several hundreds of lines where incompatiblities were
found.
Plus it had to be compiled with new 64 bit compiler and run on
64 bit computer
running 64 bit version of Windows.
Multi-core support is similar, although more complex story -
the code needs to be restructured significantly. Also even if
you restructure
the code you may find out that there is no gain because the
speed
is limited not by execution of CPU but by memory access
because
modern CPUs can often calculate more data than RAM is able to
read/store.
Also thread switching / synchronization make eat all
theoretical gains.
For example if you make array addition parallel it will run
SLOWER on dual
core than on single core unless array has hundreds of
thousands bars because
of thread management overhead.
Multiple CPU/Core is only able to run at full speed if data
and code can
fill entirely within integrated on-die processor cache. This
is rarely the case
when it comes to data of thousands of symbols each having
thousands of data bars.
As soon as processor needs to access RAM it simply needs to
wait.
Single core can be amazingly fast when processing arrays and
it is much
faster than RAM. Code compiled with SSE instructions enabled
(x64 version does that),
use SIMD instructions that can add/multiply 4 numbers in one
CPU cycle.
This is way way faster than RAM speed so processor wastes time
waiting for
RAM access if data are not fully present in CPU cache. And
adding second core
does not help if RAM is bottleneck.
What I am talking about here is not theoretical stuff but
something I actually
measured on internal testing versions of AB that used
parallelized parts.
Current production versions of AB do not use multiple
cores.
It will change sooner or later but currently I give no
dates.
Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message -----
From:
mark keitel
To: amibroker@xxxxxxxxx ps.com
Sent: Wednesday, November 22, 2006 8:26
PM
Subject: RE: [amibroker] Re: Can anyone
explain Why AmiBrokers instead of Metastock
Thomas,
If 64 bit adds 25% to
AB¢s speed
How much will the
Dual Core add?
Mark
From: amibroker@xxxxxxxxx ps.com
[mailto:amibroker@ yahoogroups. com] On
Behalf Of Tomasz Janeczko
Sent: Wednesday, November 22, 2006 11:41
AM
To: amibroker@xxxxxxxxx ps.com
Subject: Re: [amibroker] Re: Can anyone
explain Why AmiBrokers instead of Metastock
Actually
64 bit itself adds 25% to AmiBroker speed (AFL execution).
http://www.amibroke r.com/x64/
Best
regards,
Tomasz Janeczko
amibroker.com
----- Original Message -----
From: "Fred" <ftonetti@xxxxxxxxxx net>
To:
<amibroker@xxxxxxxxx ps.com>
Sent:
Wednesday, November 22, 2006 5:18 PM
Subject: [amibroker] Re: Can anyone
explain Why AmiBrokers instead of Metastock
> I'd leave it
...
>
> Speed - Although there are 32 & 64 bit versions of
the program, 64
> bit in and of itself is not likely to add a lot of
speed to ANY
> program. As far as the programs speed is concerned, this
is the
> single biggest reason I tossed TradeStation in favor of
AmiBroker
> years ago. In this regard, MetaStock isn't even a close 3rd
...
>
> Dual CPU/Core - There is a planned enhancement to be able
to utilize
> multuiple CPU's / Cores for AmiBroker optimization. TJ
would have to
> be the one to speak to when that would most likely be
available.
> There are already add in products that allow multiple
machines to
> cooperate in this process.
>
> Ease of Use -
I find AmiBroker to be no better or worse in this
> regard then any
other platform, but I suspect different people will
> see this one
differently.
>
> Add Ins / PlugIns - I personally find it
extremely unlikely that
> other platforms are as flexible in this
regard as AmiBroker. One can
> write their own DLL's in C++ and/or
other languages if one desires
> and use OLE/Automation to drive
AmiBroker in almost any way one
> wants.
>
> --- In amibroker@xxxxxxxxx ps.com,
"Natasha ~~!!!"
> <ghostship.blackpar rot@xxx>
wrote:
>>
>> hello,
>>
>> Depends why u
are buying the software . If u are buying to make
> money
on
>> the stock markets
>> by trading then amibroker will
make you lots of money and this
> would be
>> extremely good
value for money .
>>
>>
>> Else u can buy either
, it makes no difference .
>>
>> I am assuming that one
would make money on the stock markets
> if one has
>> a good
trading system adn
>> strategy and ease of operation of both looking
at charts and
> designing a
>> system to suit your
trading
>> mentality and bank balance.
>>
>> Of
couse this is my take and it is mine .Take it or leave it
> is
your
>> take .
>>
>> ````` Natasha
!!!!!!
>>
>>
>> On 11/22/06, mytakeismine
<mytakeismine@ ...> wrote:
>> >
>> > Why
AmiBrokers instead of Metastock?
>> > Speed, ease of use, add-ins
and plug-ins, richness and maturity
>> >
>> > Speed,
Is this 32bit or a 64bit program? will this benefit from
>
dual
>> > processors(smp) ?
>> >
>> >
Ease of use, Learning curve this verses Metastock, intuitive?
>>
>
>> > Add-ins and plug-ins, Can you get more or less with this
verses
>> > metastock?
>> >
>> >
Intuitive, does it easily makes sence the way it was written
>
almost
>> > anticipating your needs?
>> >
>>
> I am asking this here and at metastock, I have known about
>
Metastock
>> > for sometime and am just hearing for the first time
about
> AmiBrokers
>> >
>> > Thanks
>>
> mytakeismine
>> >
>> >
>>
>
>>
>>
>>
>> --
>> Warm
Regards;
>> `````` Natasha !!!
>>
>
>
>
>
>
> Please note that this group is for discussion
between users only.
>
> To get support from AmiBroker please send
an e-mail directly to
> SUPPORT {at} amibroker.com
>
> For
NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
> http://www.amibroke r.com/devlog/
>
> For other support material please check also:
> http://www.amibroke r.com/support. html
>
> Yahoo! Groups Links
>
>
>
>
>
>
<!--
#ygrp-mlmsg {font-size:13px;font-family:arial,helvetica,clean,sans-serif;}
#ygrp-mlmsg table {font-size:inherit;font:100%;}
#ygrp-mlmsg select, input, textarea {font:99% arial,helvetica,clean,sans-serif;}
#ygrp-mlmsg pre, code {font:115% monospace;}
#ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
font-family:Georgia;
}
#ygrp-text p{
margin:0 0 1em 0;
}
#ygrp-tpmsgs{
font-family:Arial;
clear:both;
}
#ygrp-vitnav{
padding-top:10px;
font-family:Verdana;
font-size:77%;
margin:0;
}
#ygrp-vitnav a{
padding:0 1px;
}
#ygrp-actbar{
clear:both;
margin:25px 0;
white-space:nowrap;
color:#666;
text-align:right;
}
#ygrp-actbar .left{
float:left;
white-space:nowrap;
}
.bld{font-weight:bold;}
#ygrp-grft{
font-family:Verdana;
font-size:77%;
padding:15px 0;
}
#ygrp-ft{
font-family:verdana;
font-size:77%;
border-top:1px solid #666;
padding:5px 0;
}
#ygrp-mlmsg #logo{
padding-bottom:10px;
}
#ygrp-vital{
background-color:#e0ecee;
margin-bottom:20px;
padding:2px 0 8px 8px;
}
#ygrp-vital #vithd{
font-size:77%;
font-family:Verdana;
font-weight:bold;
color:#333;
text-transform:uppercase;
}
#ygrp-vital ul{
padding:0;
margin:2px 0;
}
#ygrp-vital ul li{
list-style-type:none;
clear:both;
border:1px solid #e0ecee;
}
#ygrp-vital ul li .ct{
font-weight:bold;
color:#ff7900;
float:right;
width:2em;
text-align:right;
padding-right:.5em;
}
#ygrp-vital ul li .cat{
font-weight:bold;
}
#ygrp-vital a {
text-decoration:none;
}
#ygrp-vital a:hover{
text-decoration:underline;
}
#ygrp-sponsor #hd{
color:#999;
font-size:77%;
}
#ygrp-sponsor #ov{
padding:6px 13px;
background-color:#e0ecee;
margin-bottom:20px;
}
#ygrp-sponsor #ov ul{
padding:0 0 0 8px;
margin:0;
}
#ygrp-sponsor #ov li{
list-style-type:square;
padding:6px 0;
font-size:77%;
}
#ygrp-sponsor #ov li a{
text-decoration:none;
font-size:130%;
}
#ygrp-sponsor #nc {
background-color:#eee;
margin-bottom:20px;
padding:0 8px;
}
#ygrp-sponsor .ad{
padding:8px 0;
}
#ygrp-sponsor .ad #hd1{
font-family:Arial;
font-weight:bold;
color:#628c2a;
font-size:100%;
line-height:122%;
}
#ygrp-sponsor .ad a{
text-decoration:none;
}
#ygrp-sponsor .ad a:hover{
text-decoration:underline;
}
#ygrp-sponsor .ad p{
margin:0;
}
o {font-size:0;}
.MsoNormal {
margin:0 0 0 0;
}
#ygrp-text tt{
font-size:120%;
}
blockquote{margin:0 0 0 4px;}
.replbq {margin:4;}
-->
Content-Description: "AVG certification"
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.409 / Virus Database: 268.14.13/546 - Release Date: 11/22/2006
|