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

Re: [amibroker] Re: Can anyone explain Why AmiBrokers instead of Metastock



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