quickfix-developers Mailing List for QuickFIX (Page 118)
Brought to you by:
orenmnero
You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
|
Feb
(5) |
Mar
(16) |
Apr
(15) |
May
(17) |
Jun
(33) |
Jul
(35) |
Aug
(34) |
Sep
(19) |
Oct
(40) |
Nov
(51) |
Dec
(43) |
| 2003 |
Jan
(45) |
Feb
(79) |
Mar
(124) |
Apr
(121) |
May
(132) |
Jun
(77) |
Jul
(110) |
Aug
(57) |
Sep
(48) |
Oct
(83) |
Nov
(60) |
Dec
(40) |
| 2004 |
Jan
(67) |
Feb
(72) |
Mar
(74) |
Apr
(87) |
May
(70) |
Jun
(96) |
Jul
(75) |
Aug
(147) |
Sep
(128) |
Oct
(83) |
Nov
(67) |
Dec
(42) |
| 2005 |
Jan
(110) |
Feb
(84) |
Mar
(68) |
Apr
(55) |
May
(51) |
Jun
(192) |
Jul
(111) |
Aug
(100) |
Sep
(79) |
Oct
(127) |
Nov
(73) |
Dec
(112) |
| 2006 |
Jan
(95) |
Feb
(120) |
Mar
(138) |
Apr
(127) |
May
(124) |
Jun
(97) |
Jul
(103) |
Aug
(88) |
Sep
(138) |
Oct
(91) |
Nov
(112) |
Dec
(57) |
| 2007 |
Jan
(55) |
Feb
(35) |
Mar
(56) |
Apr
(16) |
May
(20) |
Jun
(77) |
Jul
(43) |
Aug
(47) |
Sep
(29) |
Oct
(54) |
Nov
(39) |
Dec
(40) |
| 2008 |
Jan
(69) |
Feb
(79) |
Mar
(122) |
Apr
(106) |
May
(114) |
Jun
(76) |
Jul
(83) |
Aug
(71) |
Sep
(53) |
Oct
(75) |
Nov
(54) |
Dec
(43) |
| 2009 |
Jan
(32) |
Feb
(31) |
Mar
(64) |
Apr
(48) |
May
(38) |
Jun
(43) |
Jul
(35) |
Aug
(15) |
Sep
(52) |
Oct
(62) |
Nov
(62) |
Dec
(21) |
| 2010 |
Jan
(44) |
Feb
(10) |
Mar
(47) |
Apr
(22) |
May
(5) |
Jun
(54) |
Jul
(19) |
Aug
(54) |
Sep
(16) |
Oct
(15) |
Nov
(7) |
Dec
(8) |
| 2011 |
Jan
(18) |
Feb
(9) |
Mar
(5) |
Apr
(5) |
May
(41) |
Jun
(40) |
Jul
(29) |
Aug
(17) |
Sep
(12) |
Oct
(23) |
Nov
(22) |
Dec
(11) |
| 2012 |
Jan
(8) |
Feb
(24) |
Mar
(5) |
Apr
(5) |
May
(6) |
Jun
(5) |
Jul
(5) |
Aug
(5) |
Sep
(2) |
Oct
(9) |
Nov
(2) |
Dec
(18) |
| 2013 |
Jan
(25) |
Feb
(16) |
Mar
(8) |
Apr
(2) |
May
(16) |
Jun
(17) |
Jul
(2) |
Aug
(13) |
Sep
(3) |
Oct
(4) |
Nov
(1) |
Dec
|
| 2014 |
Jan
(2) |
Feb
|
Mar
(22) |
Apr
(9) |
May
(3) |
Jun
(1) |
Jul
(5) |
Aug
(11) |
Sep
(18) |
Oct
(4) |
Nov
(4) |
Dec
(3) |
| 2015 |
Jan
(2) |
Feb
|
Mar
|
Apr
(3) |
May
(4) |
Jun
(37) |
Jul
|
Aug
(4) |
Sep
(6) |
Oct
(1) |
Nov
(4) |
Dec
(2) |
| 2016 |
Jan
(9) |
Feb
(3) |
Mar
(7) |
Apr
(1) |
May
(8) |
Jun
|
Jul
|
Aug
|
Sep
(7) |
Oct
(3) |
Nov
(16) |
Dec
|
| 2017 |
Jan
(1) |
Feb
(15) |
Mar
(2) |
Apr
(12) |
May
(4) |
Jun
(7) |
Jul
(5) |
Aug
|
Sep
|
Oct
|
Nov
(23) |
Dec
(8) |
| 2018 |
Jan
(2) |
Feb
(4) |
Mar
(2) |
Apr
(8) |
May
(3) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2019 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
(5) |
Nov
(3) |
Dec
|
| 2020 |
Jan
|
Feb
(4) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
(12) |
Aug
(5) |
Sep
(3) |
Oct
(1) |
Nov
|
Dec
(1) |
| 2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2022 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2026 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Djalma R. d. S. F. <drs...@gm...> - 2007-02-08 22:31:35
|
Hi Sheetal, Very interesting question. Some collegues made this question to me some time ago, but I didn't know the answer, in my application I prefered to avoid the cracker overhead anyway. But, now looking at the quickfix folders, I found that there are special scripts to to that. Try spec\generate.bat or spec\generate.sh. You should change the dictionaries in the spec directory or change the scripts to point to others. It seems that you must have ruby and msxsl.exe installed (or xsltproc to use generate.sh). I did not test it and I am not sure if these are the only required steps. Djalma On 2/7/07, Sheetal Chainraj <sch...@gm...> wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > I am trying to add new fields to the NewOrderSingle message type. I added > this in the spec/fix44.xml message. After this, expecting to regnerate the > correct C++ header files under src/C++/fix44/ , I ran make in the home > directory. It did not generate any new files. I am sure I am missing some > step. Can some give me a pointer please? > > thanks, > Sheetal > -- > View this message in context: > http://www.nabble.com/Rgenerating-code-after-changing-xml-files-in-spec-fix44-directory-tf3190167.html#a8855920 > Sent from the QuickFIX - Dev mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier. > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > |
|
From: Sheetal C. <sch...@gm...> - 2007-02-07 22:50:25
|
I am trying to add new fields to the NewOrderSingle message type. I added this in the spec/fix44.xml message. After this, expecting to regnerate the correct C++ header files under src/C++/fix44/ , I ran make in the home directory. It did not generate any new files. I am sure I am missing some step. Can some give me a pointer please? thanks, Sheetal -- View this message in context: http://www.nabble.com/Rgenerating-code-after-changing-xml-files-in-spec-fix44-directory-tf3190167.html#a8855920 Sent from the QuickFIX - Dev mailing list archive at Nabble.com. |
|
From: Oren M. <or...@qu...> - 2007-02-07 17:00:00
|
This change has been committed to svn.
> As I work a lot with 64 bit platforms, I would appreciate this
> modification in next QuickFIX version.
>
> Thanks,
> Djalma
>
>
> ///////////////////////////////////////////////////////////////////
> int socket_getsockopt( int s, int opt, int& optval )
> { QF_STACK_PUSH(socket_getsockopt)
>
> int level = SOL_SOCKET;
> if( opt == TCP_NODELAY )
> level = IPPROTO_TCP;
>
> #ifdef _MSC_VER
> int length = sizeof(int); // @@This is an IN/OUT parameter and
> should be initialized this way
> #else
> socklen_t length;
> #endif
>
> return ::getsockopt( s, level, opt,
> ( char* ) & optval, & length );
>
> QF_STACK_POP
> }
> ///////////////////////////////////////////////////////////////////
> ----------------------------------------------------------------------
> ---
> Using Tomcat but need to do more? Need to support web services,
> security?
> Get stuff done quickly with pre-integrated technology to make your
> job easier.
> Download IBM WebSphere Application Server v.1.0.1 based on Apache
> Geronimo
> http://sel.as-us.falkag.net/sel?
> cmd=lnk&kid=120709&bid=263057&dat=121642______________________________
> _________________
> Quickfix-developers mailing list
> Qui...@li...
> https://lists.sourceforge.net/lists/listinfo/quickfix-developers
|
|
From: Oren M. <or...@qu...> - 2007-02-07 16:51:34
|
This is something that should be fixed in the svn version. The current release doesn't spawn a new thread. If you want to use the release version, you should spawn a ruby thread and call start in there. --oren On Feb 6, 2007, at 7:56 AM, Dan McCormick wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/ > html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > Hi, > > I'm new to both Quickfix and Ruby so forgive me if I'm missing > something > basic, but it doesn't look like threading is working in Ruby. > > In executor.rb, if you add a > > print "hello\n" > > after line 103, acceptor.start, the "hello" never gets printed. > Similarly, a print statement after an initiator.start call in a client > never gets called. Everything else works fine -- I've successfully > set > up executor with a client, and they heartbeat correctly. > > Modifying the C++ version of executor, the print statements work. > I've > also tested non-Quickfix-related threading in Ruby, and that seems to > work fine. > > I'm using Quickfix 1.12.4 compiled with Ruby and MySQL support on a > Linux Fedora Core 3 (with gcc 3.4.4) system. > > Any ideas? > > Thanks, > Dan > > > ---------------------------------------------------------------------- > --- > Using Tomcat but need to do more? Need to support web services, > security? > Get stuff done quickly with pre-integrated technology to make your > job easier. > Download IBM WebSphere Application Server v.1.0.1 based on Apache > Geronimo > http://sel.as-us.falkag.net/sel? > cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > |
|
From: Djalma R. d. S. F. <drs...@gm...> - 2007-02-06 19:01:36
|
Hi,
I got the following error, only in a Itanium server (IA64) and only in
Release mode:
Unhandled exception at 0x180021004a000800 in BTSFIXGateway.exe:
0xC0000005: Access violation executing location 0x180021004a000800.
After many hours of remote debugging, I found a bug fixing for it in
socket_getsockopt function (Utility.cpp).
The reason is that the last getsockopt parameter (*optlen) *is both for
input and output, thus it should be properly initialized, indeed all the
MSDN examples that I saw do it.
My opinion is that maybe this error is occurring only with Windows
IA64 because of specific processor optimization, as I said, it does
not occur in debug mode even with Itanium.
As I work a lot with 64 bit platforms, I would appreciate this modification
in next QuickFIX version.
Thanks,
Djalma
///////////////////////////////////////////////////////////////////
int socket_getsockopt( int s, int opt, int& optval )
{ QF_STACK_PUSH(socket_getsockopt)
int level = SOL_SOCKET;
if( opt == TCP_NODELAY )
level = IPPROTO_TCP;
#ifdef _MSC_VER
int length = sizeof(int); // @@This is an IN/OUT parameter and should be
initialized this way
#else
socklen_t length;
#endif
return ::getsockopt( s, level, opt,
( char* ) & optval, & length );
QF_STACK_POP
}
///////////////////////////////////////////////////////////////////
|
|
From: Dan M. <da...@co...> - 2007-02-06 13:57:17
|
Hi, I'm new to both Quickfix and Ruby so forgive me if I'm missing something basic, but it doesn't look like threading is working in Ruby. In executor.rb, if you add a print "hello\n" after line 103, acceptor.start, the "hello" never gets printed. Similarly, a print statement after an initiator.start call in a client never gets called. Everything else works fine -- I've successfully set up executor with a client, and they heartbeat correctly. Modifying the C++ version of executor, the print statements work. I've also tested non-Quickfix-related threading in Ruby, and that seems to work fine. I'm using Quickfix 1.12.4 compiled with Ruby and MySQL support on a Linux Fedora Core 3 (with gcc 3.4.4) system. Any ideas? Thanks, Dan |
|
From: Vikram V. <rer...@ya...> - 2007-02-06 06:39:16
|
Hi Robert, The latency values were in milliseconds. and the throughput is in transactions / second. And, regarding the test environment... # of CPU's : 2 (Arch : x386) Platform : Solaris JVM : version 1.5.0_10 Logging : Using FileLogFactory... logs go to files... Thanks, Vikram robparrott wrote: > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > Also, for these number to be better interpreted, you'll need to be > more specific about the number of CPUs, and settings and version of > the JVM. Also, what kind of logging are you using? What platform? > > Otherwise it's hard to tell if you are testing QuickFIX or are seeing > effects of garbage collecting and such in the JVM itself, or perhaps > of File IO due to logging and persistence. > > The very disparate values in the results, especially latency, say to > me that you are hitting system performance bottlenecks, and not really > testing QuickFIX/J at this point. > > > On 2/4/07, Robert Parrott <rob...@gm...> wrote: >> Hi Vikram, can you provide some units here? Are these microseconds? >> >> On 2/1/07, Vikram Venkatesan <rer...@ya...> wrote: >> > QuickFIX Documentation: >> http://www.quickfixengine.org/quickfix/doc/html/index.html >> > QuickFIX Support: http://www.quickfixengine.org/services.html >> > >> > >> > Hi, >> > I have done some performance tests for Quickfix/J 1.0.4. and got >> some >> > performance results. Please let me know whether the performance results >> are >> > acceptable, and are expected. >> > >> > Started Client1 (Trader) and Client2(CounterParty) on the same machine >> > (Architecture : i386 / Memory : 4 GB ). >> > >> > 1. Throughput testing >> > Description : Placed 100,000 orders from Trader and got all the >> orders >> > filled by the Counterparty (i.e. received all execution reports). The >> total >> > time taken is noted, and the throughout is calculated(orders per >> second) for >> > 100,000 orders. >> > >> > Average throughput : 3600 transactions / second. >> > (where transaction = sending order and receiving it's execution >> report). >> > >> > 2. Ping pong mode of testing >> > Description : Placed 'N' orders from Trader. On receiving execution >> > report for all the 'N' orders, the next 'N' orders are placed and so >> > on...sort of BLOCKING order placement. >> > Latency : >> > On receiving the execution report for the 'N' th order, the >> time >> > difference between the current time and the PLACING TIME of that order >> is >> > calculated and this is taken as the LATENCY for an order. >> > >> > Throuthput calculation: >> > The total time taken for 'N' orders to be filled is taken down. >> From >> > this the throughput is calculated. >> > >> > Batch size = The value of 'N'. >> > >> > # orders Batch size Min Latency Max Latency Avg latency Min >> throughput >> > Max throughput Avg throughput >> > 100000 1 1 1009 504 >> 2 >> > 1000 575 >> > 100000 2 1 1028 501 >> 22 >> > 2000 1728 >> > 100000 5 1 1009 501 >> 90 >> > 5000 3999 >> > 100000 10 1 1028 499 >> 62 >> > 10000 4300 >> > 100000 100 9 1042 518 >> 200 >> > 9090 5126 >> > 100000 1000 28 1038 529 >> 3058 >> > 6802 5778 >> > >> > >> > - Vikram >> > -- >> > View this message in context: >> http://www.nabble.com/Performance-of-QuickFix-J-vs-QuickFix-%28C%2B%2B%29-tf3134559.html#a8746000 >> > Sent from the QuickFIX - Dev mailing list archive at Nabble.com. >> > >> > >> > >> ------------------------------------------------------------------------- >> > Using Tomcat but need to do more? Need to support web services, >> security? >> > Get stuff done quickly with pre-integrated technology to make your job >> easier. >> > Download IBM WebSphere Application Server v.1.0.1 based on Apache >> Geronimo >> > >> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >> > _______________________________________________ >> > Quickfix-developers mailing list >> > Qui...@li... >> > https://lists.sourceforge.net/lists/listinfo/quickfix-developers >> > >> > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job > easier. > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > -- View this message in context: http://www.nabble.com/Performance-of-QuickFix-J-vs-QuickFix-%28C%2B%2B%29-tf3134559.html#a8821178 Sent from the QuickFIX - Dev mailing list archive at Nabble.com. |
|
From: Robert P. <rob...@gm...> - 2007-02-05 00:33:32
|
Also, for these number to be better interpreted, you'll need to be more specific about the number of CPUs, and settings and version of the JVM. Also, what kind of logging are you using? What platform? Otherwise it's hard to tell if you are testing QuickFIX or are seeing effects of garbage collecting and such in the JVM itself, or perhaps of File IO due to logging and persistence. The very disparate values in the results, especially latency, say to me that you are hitting system performance bottlenecks, and not really testing QuickFIX/J at this point. On 2/4/07, Robert Parrott <rob...@gm...> wrote: > Hi Vikram, can you provide some units here? Are these microseconds? > > On 2/1/07, Vikram Venkatesan <rer...@ya...> wrote: > > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > > QuickFIX Support: http://www.quickfixengine.org/services.html > > > > > > Hi, > > I have done some performance tests for Quickfix/J 1.0.4. and got some > > performance results. Please let me know whether the performance results are > > acceptable, and are expected. > > > > Started Client1 (Trader) and Client2(CounterParty) on the same machine > > (Architecture : i386 / Memory : 4 GB ). > > > > 1. Throughput testing > > Description : Placed 100,000 orders from Trader and got all the orders > > filled by the Counterparty (i.e. received all execution reports). The total > > time taken is noted, and the throughout is calculated(orders per second) for > > 100,000 orders. > > > > Average throughput : 3600 transactions / second. > > (where transaction = sending order and receiving it's execution report). > > > > 2. Ping pong mode of testing > > Description : Placed 'N' orders from Trader. On receiving execution > > report for all the 'N' orders, the next 'N' orders are placed and so > > on...sort of BLOCKING order placement. > > Latency : > > On receiving the execution report for the 'N' th order, the time > > difference between the current time and the PLACING TIME of that order is > > calculated and this is taken as the LATENCY for an order. > > > > Throuthput calculation: > > The total time taken for 'N' orders to be filled is taken down. From > > this the throughput is calculated. > > > > Batch size = The value of 'N'. > > > > # orders Batch size Min Latency Max Latency Avg latency Min throughput > > Max throughput Avg throughput > > 100000 1 1 1009 504 2 > > 1000 575 > > 100000 2 1 1028 501 22 > > 2000 1728 > > 100000 5 1 1009 501 90 > > 5000 3999 > > 100000 10 1 1028 499 62 > > 10000 4300 > > 100000 100 9 1042 518 200 > > 9090 5126 > > 100000 1000 28 1038 529 3058 > > 6802 5778 > > > > > > - Vikram > > -- > > View this message in context: http://www.nabble.com/Performance-of-QuickFix-J-vs-QuickFix-%28C%2B%2B%29-tf3134559.html#a8746000 > > Sent from the QuickFIX - Dev mailing list archive at Nabble.com. > > > > > > ------------------------------------------------------------------------- > > Using Tomcat but need to do more? Need to support web services, security? > > Get stuff done quickly with pre-integrated technology to make your job easier. > > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > > _______________________________________________ > > Quickfix-developers mailing list > > Qui...@li... > > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > > > |
|
From: Robert P. <rob...@gm...> - 2007-02-05 00:19:02
|
Hi Vikram, can you provide some units here? Are these microseconds? On 2/1/07, Vikram Venkatesan <rer...@ya...> wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > Hi, > I have done some performance tests for Quickfix/J 1.0.4. and got some > performance results. Please let me know whether the performance results are > acceptable, and are expected. > > Started Client1 (Trader) and Client2(CounterParty) on the same machine > (Architecture : i386 / Memory : 4 GB ). > > 1. Throughput testing > Description : Placed 100,000 orders from Trader and got all the orders > filled by the Counterparty (i.e. received all execution reports). The total > time taken is noted, and the throughout is calculated(orders per second) for > 100,000 orders. > > Average throughput : 3600 transactions / second. > (where transaction = sending order and receiving it's execution report). > > 2. Ping pong mode of testing > Description : Placed 'N' orders from Trader. On receiving execution > report for all the 'N' orders, the next 'N' orders are placed and so > on...sort of BLOCKING order placement. > Latency : > On receiving the execution report for the 'N' th order, the time > difference between the current time and the PLACING TIME of that order is > calculated and this is taken as the LATENCY for an order. > > Throuthput calculation: > The total time taken for 'N' orders to be filled is taken down. From > this the throughput is calculated. > > Batch size = The value of 'N'. > > # orders Batch size Min Latency Max Latency Avg latency Min throughput > Max throughput Avg throughput > 100000 1 1 1009 504 2 > 1000 575 > 100000 2 1 1028 501 22 > 2000 1728 > 100000 5 1 1009 501 90 > 5000 3999 > 100000 10 1 1028 499 62 > 10000 4300 > 100000 100 9 1042 518 200 > 9090 5126 > 100000 1000 28 1038 529 3058 > 6802 5778 > > > - Vikram > -- > View this message in context: http://www.nabble.com/Performance-of-QuickFix-J-vs-QuickFix-%28C%2B%2B%29-tf3134559.html#a8746000 > Sent from the QuickFIX - Dev mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier. > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers > |
|
From: Bogdan C. <fxe...@ya...> - 2007-02-04 16:42:04
|
[I too am complete newbie to FIX ... all I know is MetaTrader...]
I started to unravel the quickfix mysteries starting from the Executor app.
Was kinda dumb at that time and I didn't understand how to make the settings file, so I was forced to learn how to make config manually.
I thought things would be simpler with a container class, which was supposed to easily handle the config.
so here it goes:
Option Explicit On
Imports System
Imports System.Globalization
Imports QuickFix
Module FastFix
Public Const FIX44 As String = "FIX.4.4"
Public Const FIX43 As String = "FIX.4.3"
Public Const FIX42 As String = "FIX.4.2"
Public Const FIX41 As String = "FIX.4.1"
Public Const FIX40 As String = "FIX.4.0"
Public Const Initiator As String = "initiator"
Public Const Acceptor As String = "acceptor"
Public Class FixContainer
Public fixConnectionType As String
Public fixSessionID As SessionID
Public fixDictionary As New Dictionary
Public fixDataDictionary As New DataDictionary
Public fixSessionSettings As SessionSettings
Public fixApplication As New Application
Public fixFileStoreFactory As FileStoreFactory
Public fixFileLogFactory As FileLogFactory
Public fixMessageFactory As New DefaultMessageFactory
Public fixSocketAcceptor As SocketAcceptor
Public fixSocketInitiator As SocketInitiator
Public Sub New(ByVal BaseURL As String, _
ByVal BeginString As String, _
ByVal SenderCompID As String, _
ByVal TargetCompID As String, _
ByVal SessionQualifier As String, _
ByVal ConnectionType As String, _
ByVal SocketPort As Integer, _
ByVal SocketHost As String, _
Optional ByVal StartTime As String = "", _
Optional ByVal EndTime As String = "", _
Optional ByVal StartDay As String = "", _
Optional ByVal EndDay As String = "", _
Optional ByVal MillisecondsInTimeStamp As String = "Y", _
Optional ByVal SendRedundantResendRequests As String = "N", _
Optional ByVal ResetOnLogon As String = "N", _
Optional ByVal ResetOnLogout As String = "N", _
Optional ByVal ResetOnDisconnect As String = "N", _
Optional ByVal RefreshOnLogon As String = "N", _
Optional ByVal HeartBtInt As Integer = 30)
fixConnectionType = ConnectionType
Try
'ID keys
Dim NowDateStart, NowDateEnd As DateTime
Dim FullURL As String = BaseURL
Dim FixFile As String = ""
fixSessionID = New SessionID(BeginString, SenderCompID, TargetCompID, SessionQualifier)
Select Case BeginString
Case "FIX.4.0"
FixFile = "FIX40.XML"
Case "FIX.4.1"
FixFile = "FIX41.XML"
Case "FIX.4.2"
FixFile = "FIX42.XML"
Case "FIX.4.3"
FixFile = "FIX43.XML"
Case "FIX.4.4"
FixFile = "FIX44.XML"
End Select
FullURL = BaseURL + FixFile
fixDataDictionary = New DataDictionary(FullURL)
fixDictionary.setString("BeginString", BeginString)
fixDictionary.setString("SenderCompID", SenderCompID)
fixDictionary.setString("TargetCompID", TargetCompID)
If fixConnectionType = "initiator" Then
fixDictionary.setString("SessionQualifier", SessionQualifier)
End If
fixDictionary.setString("ConnectionType", ConnectionType)
NowDateStart = DateTime.UtcNow
NowDateEnd = NowDateStart.AddDays(7)
If Len(StartTime) <> 0 Then
fixDictionary.setString("StartTime", StartTime)
Else
fixDictionary.setString("StartTime", NowDateStart.ToString("T", DateTimeFormatInfo.InvariantInfo))
End If
If Len(EndTime) <> 0 Then
fixDictionary.setString("EndTime", EndTime)
Else
fixDictionary.setString("EndTime", NowDateEnd.ToString("T", DateTimeFormatInfo.InvariantInfo))
End If
If Len(StartDay) <> 0 Then
fixDictionary.setString("StartDay", StartDay)
Else
fixDictionary.setString("StartDay", NowDateStart.DayOfWeek)
End If
If Len(EndDay) <> 0 Then
fixDictionary.setString("EndDay", EndDay)
Else
fixDictionary.setString("EndDay", NowDateEnd.DayOfWeek)
End If
fixDictionary.setString("MillisecondsInTimeStamp", MillisecondsInTimeStamp)
fixDictionary.setString("SendRedundantResendRequests", SendRedundantResendRequests)
fixDictionary.setString("ResetOnLogon", ResetOnLogon)
fixDictionary.setString("ResetOnLogout", ResetOnLogout)
fixDictionary.setString("ResetOnDisconnect", ResetOnDisconnect)
fixDictionary.setString("ResetOnLogon", RefreshOnLogon)
'Validation keys
fixDictionary.setString("UseDataDictionary", "Y")
fixDictionary.setString("DataDictionary", FullURL)
'Initiator and acceptor keys
fixDictionary.setLong("HeartBtInt", HeartBtInt)
If fixConnectionType = "initiator" Then
fixDictionary.setLong("SocketConnectPort", SocketPort)
fixDictionary.setString("SocketConnectHost", SocketHost)
End If
If fixConnectionType = "acceptor" Then
fixDictionary.setLong("SocketAcceptPort", SocketPort)
End If
'Building settings
fixSessionSettings = New SessionSettings
fixSessionSettings.set(fixSessionID, fixDictionary)
fixFileStoreFactory = New FileStoreFactory("c:\quickfixmsgs")
fixFileLogFactory = New FileLogFactory("c:\quickfixmsgs")
fixDataDictionary = New DataDictionary(FullURL)
'Building Session
'at FIX.SocketInitiator.{ctor}(SocketInitiator* , Application* , MessageStoreFactory* , SessionSettings* , LogFactory* )
If fixConnectionType = "initiator" Then
'error goes here
fixSocketInitiator = New SocketInitiator(fixApplication, fixFileStoreFactory, fixSessionSettings, fixFileLogFactory, fixMessageFactory)
End If
If fixConnectionType = "acceptor" Then
'and here
fixSocketAcceptor = New SocketAcceptor(fixApplication, fixFileStoreFactory, fixSessionSettings, fixFileLogFactory, fixMessageFactory)
End If
Console.WriteLine("Session existence status : " + CStr(Session.doesSessionExist(fixSessionID)))
Catch e As System.Exception
Console.WriteLine(e)
Console.ReadKey()
End Try
End Sub
Sub Login()
If fixConnectionType = "initiator" Then
fixSocketInitiator.start()
End If
If fixConnectionType = "acceptor" Then
fixSocketAcceptor.start()
End If
End Sub
Sub Logoff()
If fixConnectionType = "initiator" Then
fixSocketInitiator.stop()
End If
If fixConnectionType = "acceptor" Then
fixSocketAcceptor.stop()
End If
End Sub
End Class
End Module
I left the Application.vb module intact as it was in Executor, and initiated configuration from the main module:
Dim Fixc As New FixContainer("file:///F:/Trading%20Platform%20Kits/QuickFIX%20engine/quickfix/spec/", FIX41, "TW", "ARCA", "Fixc", Initiator, 9823, "123.123.123.123")
what i get is this:
System.AccessViolationException: Attempted to read or write protected memory. Th
is is often an indication that other memory is corrupt.
at FIX.SocketInitiator.{ctor}(SocketInitiator* , Application* , MessageStoreF
actory* , SessionSettings* , LogFactory* )
at QuickFix.SocketInitiator..ctor(Application application, MessageStoreFactor
y factory, SessionSettings settings, LogFactory logFactory, MessageFactory messa
geFactory)
[....]
Now I'm totally lost.
P.S.
1.If i set connection type to Acceptor, i get the same error, generated by New SocketAcceptor
2.I also have doubts about the FileStoreFactory and FileLogFactory, because the New requests a path and in the example the New is applied to settings...
Did anyone confront with this issue?
---------------------------------
Need Mail bonding?
Go to the Yahoo! Mail Q&A for great tips from Yahoo! Answers users. |
|
From: Vikram V. <rer...@ya...> - 2007-02-01 10:31:49
|
Hi,
I have done some performance tests for Quickfix/J 1.0.4. and got some
performance results. Please let me know whether the performance results are
acceptable, and are expected.
Started Client1 (Trader) and Client2(CounterParty) on the same machine
(Architecture : i386 / Memory : 4 GB ).
1. Throughput testing
Description : Placed 100,000 orders from Trader and got all the orders
filled by the Counterparty (i.e. received all execution reports). The total
time taken is noted, and the throughout is calculated(orders per second) for
100,000 orders.
Average throughput : 3600 transactions / second.
(where transaction = sending order and receiving it's execution report).
2. Ping pong mode of testing
Description : Placed 'N' orders from Trader. On receiving execution
report for all the 'N' orders, the next 'N' orders are placed and so
on...sort of BLOCKING order placement.
Latency :
On receiving the execution report for the 'N' th order, the time
difference between the current time and the PLACING TIME of that order is
calculated and this is taken as the LATENCY for an order.
Throuthput calculation:
The total time taken for 'N' orders to be filled is taken down. From
this the throughput is calculated.
Batch size = The value of 'N'.
# orders Batch size Min Latency Max Latency Avg latency Min throughput
Max throughput Avg throughput
100000 1 1 1009 504 2
1000 575
100000 2 1 1028 501 22
2000 1728
100000 5 1 1009 501 90
5000 3999
100000 10 1 1028 499 62
10000 4300
100000 100 9 1042 518 200
9090 5126
100000 1000 28 1038 529 3058
6802 5778
- Vikram
--
View this message in context: http://www.nabble.com/Performance-of-QuickFix-J-vs-QuickFix-%28C%2B%2B%29-tf3134559.html#a8746000
Sent from the QuickFIX - Dev mailing list archive at Nabble.com.
|
|
From: Joe S. <joe...@gm...> - 2007-01-29 23:05:27
|
[I am complete newbie to FIX and electronic trading] I got source code for the QuckFX, built it and successfully ran runut and runat. I can also run OrderMatch and TradeClient examples via batch files. TradeClient outputs a bunch of "Connecting..."/"Disconnecting..." messages, but I am under impression I should be able to enter trades there and OrderMatch should execute those trades, right? However, there seem to be now way to break the loop of Connecting.../Disconnecting.. messages in Tradeclient to enter anything. Can anyone clarify how these examples should be used? |
|
From: Oren M. <or...@qu...> - 2007-01-29 22:44:11
|
It would, though it would reset the session at 00:00:00 UTC. --oren On Jan 29, 2007, at 4:45 PM, Ping Chung wrote: > Oren, > > Thanks for spotting the problem for me. > > I have it set StartTime=3D01:00:00 EndTime=3D23:59:59. If I set it as = =93 =20 > StartTime=3D00:00:00 EndTime=3D00:00:00=93, would the quickfix engine =20= > work all the time ? |
|
From: Ping C. <pc...@na...> - 2007-01-29 22:40:41
|
Oren,=20
Thanks for spotting the problem for me.=20
I have it set StartTime=3D01:00:00 EndTime=3D23:59:59. If I set it as "
StartTime=3D00:00:00 EndTime=3D00:00:00", would the quickfix engine work =
all
the time ?
=20
Ping Chung
________________________________
From: Oren Miller [mailto:or...@qu...]=20
Sent: Monday, January 29, 2007 5:15 PM
To: Ping Chung
Cc: qui...@li...
Subject: Re: [Quickfix-developers] Not able to logon from UTC 00:00:00
to UTC 00:59:59)
=20
How have you set your session times in your configuration file?
=20
--oren
=20
On Jan 29, 2007, at 3:35 PM, Ping Chung wrote:
QuickFIX Documentation:
http://www.quickfixengine.org/quickfix/doc/html/index.html
QuickFIX Support: http://www.quickfixengine.org/services.html
=20
=20
Hi all,
I have recently developing the quickfix on a window server
2003 environment with VB.net. I have created a fix message sender and a
receiver. It usually works perfectly. Yet, strange thing that I find is
whenever the server time is at 19:00 to 19:59 Eastern time, (UTC
00:00:00 to 00:59:59) I am not able to log on. On the following
screenshot, you can clearly see that there is something wrong when I
running the same receiver and sender to try to log on. I didn't change
any code but changed the clock on the server. Can anyone help to me to
solve this problem?
|
|
From: Oren M. <or...@qu...> - 2007-01-29 22:15:25
|
How have you set your session times in your configuration file? --oren On Jan 29, 2007, at 3:35 PM, Ping Chung wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/=20 > html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > > > Hi all, > > I have recently developing the quickfix on a window =20 > server 2003 environment with VB.net. I have created a fix message =20 > sender and a receiver. It usually works perfectly. Yet, strange =20 > thing that I find is whenever the server time is at 19:00 to 19:59 =20 > Eastern time, (UTC 00:00:00 to 00:59:59) I am not able to log on. =20 > On the following screenshot, you can clearly see that there is =20 > something wrong when I running the same receiver and sender to try =20 > to log on. I didn=92t change any code but changed the clock on the =20= > server. Can anyone help to me to solve this problem? |
|
From: Vikram V. <rer...@ya...> - 2007-01-29 08:04:27
|
Hi,
I am considering using QuickFix/J and am currently evaluating it's
performance(throughput, letency,etc.,). At this point, i would like to know
the comparative performances of QuickFix/J and QuickFix(C++). Is the java
version better compared to C++ version?
And, are there any benchmark perfromance test results(for throughput,
latency) for QuickFix/J or QuickFix ?
Thanks and Regards,
Vikram
--
View this message in context: http://www.nabble.com/Performance-of-QuickFix-J-vs-QuickFix-%28C%2B%2B%29-tf3134559.html#a8685486
Sent from the QuickFIX - Dev mailing list archive at Nabble.com.
|
|
From: Nick R. <nic...@gm...> - 2007-01-29 07:04:40
|
thanks for the very quick reply. I also just noticed that I had defined a message for reject 35=3 and not 35=j in my data dictionary. I was about to change that, but as you point out, QF won't 'force' the issue with regard to outbound message thanks again nick. On 29/01/07, Oren Miller <or...@qu...> wrote: > > Hi Nick, > > The method you are looking for is removeField( int field ). It is > not defined in the Message class but is in the base FieldMap class, > which is probably why you didn't see it. > > Currently, data dictionaries are only used to validate incoming > messages. Any outgoing messages are sent without regard for the data > dictionary. The reason is that the QuickFIX developer has control > over what they send out (as opposed to what they receive) and if they > choose to send a message it is assumed they know what they are > doing. This also saves some overhead in validating messages that the > counter-party is really responsible to validate (as you witnessed). > > This of course seems to be a case of the counter-party not liking a > message generated by the engine itself. This happens on occasion and > sometimes results in a configuration setting to handle communicating > with these weird situations if there is no obvious workaround. It > seems that using the removeField method should work for you though. > > Also, note that as a validator, there is no case where the data > dictionary will see a field missing and remove the field from the > message by itself. As a validator, it decides whether a message is > ok or not. It will never try to modify the message to force it to be > ok, > > You could of course grab the data dictionary and validate outgoing > messages in the toApp method yourself if you like. As you noted > however the best you could do is throw a DoNotSend if the message > fails validation. If you do throw a DoNotSend on a message with a > PossDup flag, by the way, the engine will replace the message with a > gap fill. It is not a problem to do this. > > --oren > > On Jan 29, 2007, at 12:35 AM, Nick Richardson wrote: > > > Hi all, > > > > I've recently been evaluating QF as a possible replacement for an > > in house FIX engine. > > We connect to quite a few Brokers globally and as you can imagine > > they all run different FIX engine and each have their own > > interpretation of FIX. > > > > Apologies if this is a really naive question > > > > One broker we connect to supports Business Message Reject (35=J), > > however they do not support all the fields, tag 380 (Business > > Reject Reason) > > tag 380 is a mandatory filed, so you would expect them to support > > it, or at the very least ignore, however this is not the case. > > > > Is there a way I can not send a tag on a session message ? > > I've tried to find a message.unset(filed) type method that I can > > use in the toApp() callback, but haven't found anything. > > > > I could throw a 'DoNotSend' here and then create my own > > BusinessRejectMessage without the tag they can't handle... BUT what > > would happen if the business reject was being send as part of a > > resend request (eg possDup flag is set) ? From the doco it seems > > that the QF session will sequence-reset because of the possdup flag > > being set and the fact that I threw the DoNotSend. > > > > Would that be the case ? If so, then catching in toApp(), throwing > > the exception and creating my own BusinessReject message would not > > be possible, IMHO. > > > > One other thing i did do, which I thought may have helped, was to > > make sure that the business reject message was defined in the > > DataDictionary for this particular session, and that the tag 380 > > was NOT in the message, I didn;t just make it optional, I actually > > removed it totally. > > > > <message name="Reject" msgtype="3" msgcat="admin"> > > <field name="RefSeqNum" required="Y"/> > > <field name="RefTagID" required="N"/> > > <field name="RefMsgType" required="N"/> > > <field name="SessionRejectReason" required="N"/> > > <field name="Text" required="N"/> > > </message> > > > > > > Which raises another question. If I create a DataDictionary for a > > particular session, why does QF ignore some of it ? I know that my > > newOrderSingle definition in the DataDictionary works and is being > > used by QF, as for this particular session tags 48 and 22 are > > optional and I wasn't catching the 'Conditionally Required Field' > > when I tried to get the fields, so its definitely reading the > > business messages, but not the Reject message, which is an admin > > message. > > > > > > I hope that all makes sense, I guess there are two questions here, > > 1. Can i delete a field from session message in toApp() callback > > before it is sent ? > > 2, why does QF not use my reject message as defined in the data > > dictionary ? > > > > Any help truly appreciated > > > > regards > > Nick > > -- Nick Richardson |
|
From: Oren M. <or...@qu...> - 2007-01-29 06:56:30
|
Hi Nick, The method you are looking for is removeField( int field ). It is not defined in the Message class but is in the base FieldMap class, which is probably why you didn't see it. Currently, data dictionaries are only used to validate incoming messages. Any outgoing messages are sent without regard for the data dictionary. The reason is that the QuickFIX developer has control over what they send out (as opposed to what they receive) and if they choose to send a message it is assumed they know what they are doing. This also saves some overhead in validating messages that the counter-party is really responsible to validate (as you witnessed). This of course seems to be a case of the counter-party not liking a message generated by the engine itself. This happens on occasion and sometimes results in a configuration setting to handle communicating with these weird situations if there is no obvious workaround. It seems that using the removeField method should work for you though. Also, note that as a validator, there is no case where the data dictionary will see a field missing and remove the field from the message by itself. As a validator, it decides whether a message is ok or not. It will never try to modify the message to force it to be ok, You could of course grab the data dictionary and validate outgoing messages in the toApp method yourself if you like. As you noted however the best you could do is throw a DoNotSend if the message fails validation. If you do throw a DoNotSend on a message with a PossDup flag, by the way, the engine will replace the message with a gap fill. It is not a problem to do this. --oren On Jan 29, 2007, at 12:35 AM, Nick Richardson wrote: > Hi all, > > I've recently been evaluating QF as a possible replacement for an > in house FIX engine. > We connect to quite a few Brokers globally and as you can imagine > they all run different FIX engine and each have their own > interpretation of FIX. > > Apologies if this is a really naive question > > One broker we connect to supports Business Message Reject (35=J), > however they do not support all the fields, tag 380 (Business > Reject Reason) > tag 380 is a mandatory filed, so you would expect them to support > it, or at the very least ignore, however this is not the case. > > Is there a way I can not send a tag on a session message ? > I've tried to find a message.unset(filed) type method that I can > use in the toApp() callback, but haven't found anything. > > I could throw a 'DoNotSend' here and then create my own > BusinessRejectMessage without the tag they can't handle... BUT what > would happen if the business reject was being send as part of a > resend request (eg possDup flag is set) ? From the doco it seems > that the QF session will sequence-reset because of the possdup flag > being set and the fact that I threw the DoNotSend. > > Would that be the case ? If so, then catching in toApp(), throwing > the exception and creating my own BusinessReject message would not > be possible, IMHO. > > One other thing i did do, which I thought may have helped, was to > make sure that the business reject message was defined in the > DataDictionary for this particular session, and that the tag 380 > was NOT in the message, I didn;t just make it optional, I actually > removed it totally. > > <message name="Reject" msgtype="3" msgcat="admin"> > <field name="RefSeqNum" required="Y"/> > <field name="RefTagID" required="N"/> > <field name="RefMsgType" required="N"/> > <field name="SessionRejectReason" required="N"/> > <field name="Text" required="N"/> > </message> > > > Which raises another question. If I create a DataDictionary for a > particular session, why does QF ignore some of it ? I know that my > newOrderSingle definition in the DataDictionary works and is being > used by QF, as for this particular session tags 48 and 22 are > optional and I wasn't catching the 'Conditionally Required Field' > when I tried to get the fields, so its definitely reading the > business messages, but not the Reject message, which is an admin > message. > > > I hope that all makes sense, I guess there are two questions here, > 1. Can i delete a field from session message in toApp() callback > before it is sent ? > 2, why does QF not use my reject message as defined in the data > dictionary ? > > Any help truly appreciated > > regards > Nick |
|
From: Nick R. <nic...@gm...> - 2007-01-29 06:35:53
|
Hi all,
I've recently been evaluating QF as a possible replacement for an in house
FIX engine.
We connect to quite a few Brokers globally and as you can imagine they all
run different FIX engine and each have their own interpretation of FIX.
Apologies if this is a really naive question
One broker we connect to supports Business Message Reject (35=J), however
they do not support all the fields, tag 380 (Business Reject Reason)
tag 380 is a mandatory filed, so you would expect them to support it, or at
the very least ignore, however this is not the case.
Is there a way I can not send a tag on a session message ?
I've tried to find a message.unset(filed) type method that I can use in the
toApp() callback, but haven't found anything.
I could throw a 'DoNotSend' here and then create my own
BusinessRejectMessage without the tag they can't handle... BUT what would
happen if the business reject was being send as part of a resend request (eg
possDup flag is set) ? From the doco it seems that the QF session will
sequence-reset because of the possdup flag being set and the fact that I
threw the DoNotSend.
Would that be the case ? If so, then catching in toApp(), throwing the
exception and creating my own BusinessReject message would not be possible,
IMHO.
One other thing i did do, which I thought may have helped, was to make sure
that the business reject message was defined in the DataDictionary for this
particular session, and that the tag 380 was NOT in the message, I didn;t
just make it optional, I actually removed it totally.
<message name="Reject" msgtype="3" msgcat="admin">
<field name="RefSeqNum" required="Y"/>
<field name="RefTagID" required="N"/>
<field name="RefMsgType" required="N"/>
<field name="SessionRejectReason" required="N"/>
<field name="Text" required="N"/>
</message>
Which raises another question. If I create a DataDictionary for a particular
session, why does QF ignore some of it ? I know that my newOrderSingle
definition in the DataDictionary works and is being used by QF, as for this
particular session tags 48 and 22 are optional and I wasn't catching the
'Conditionally Required Field' when I tried to get the fields, so its
definitely reading the business messages, but not the Reject message, which
is an admin message.
I hope that all makes sense, I guess there are two questions here,
1. Can i delete a field from session message in toApp() callback before it
is sent ?
2, why does QF not use my reject message as defined in the data dictionary ?
Any help truly appreciated
regards
Nick
--
Nick Richardson
|
|
From: Djalma R. d. S. F. <drs...@gm...> - 2007-01-26 18:52:15
|
Yes, you are right. It was my misunderstanding about X64 / AMD64. I could select x64 for all projects here, I think that it is a VS UI bug that occurs sometimes. I suggest that you clean your platform settings in your .sln file or even start with a new solution. On 1/26/07, Andrew Munn <an...@nm...> wrote: > > >You said you wanted AMD, X64 probably won't work for you. > > I thought X64 was AMD. I thought X64 meant you generated code > for Windows x64 on AMD64 or Intel EM64T (now renamed "Intel 64") hardware. > > -Andrew > > > On Fri, 26 Jan 2007, Djalma Rosa dos Santos Filho wrote: > > > QuickFIX Documentation: > http://www.quickfixengine.org/quickfix/doc/html/index.html > > QuickFIX Support: http://www.quickfixengine.org/services.html > > > > > |
|
From: Nick V. <ni...@ad...> - 2007-01-26 18:01:03
|
I will be out of the office starting 25/01/2007 and will not return until 29/01/2007. I will have limited access to email so will respond to your message when I return. For urgent matters, please call +971 50 592 8047. Thanks. ************************************************************************************************************** This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. Any unauthorized use of the information contained in this email or its attachments is prohibited. If this email is received in error, please contact the sender and delete the material from your computer systems. Do not use, copy, or disclose the contents of this email or any attachments. Abu Dhabi Investment Authority (ADIA) accepts no responsibility for the content of this email to the extent that the same consists of statements and opinions made which are the senders own and not made on behalf of ADIA. Nor does ADIA accept any liability for any errors or omissions in the content of this email caused by electronic and technical failures. Although ADIA has taken reasonable precautions to ensure that no viruses are present in this email, ADIA accepts no responsibility for any loss or damage arising from the use of this email or its attachments. ************************************************************************************************************** |
|
From: Andrew M. <an...@nm...> - 2007-01-26 17:42:11
|
Also for the projects that are not saying x64 here.. http://www.nmedia.net/~z/qf_x64_compile/vs.jpg .. my only options in the platform dropdown box are these http://www.nmedia.net/~z/qf_x64_compile/vs2.jpg odd that I have x64 as an option someplaces but not others. Andrew On Fri, 26 Jan 2007, Djalma Rosa dos Santos Filho wrote: > Sometimes, I find it odd too. > > Select New from the Menu and in the 'New Project Platform' dialog select X64 > to create it for the selected project (it sucks, but sometimes you have to > repeat this step for every project). > You said you wanted AMD, X64 probably won't work for you. Maybe you need to > install the support for AMD in your VS. > > > On 1/26/07, Andrew Munn <an...@nm...> wrote: >> >> The problem is when I try to select x64 in VS8 I am allowed x64 >> for some projects in the Configuration Manager but not all of them. like >> this: >> >> http://www.nmedia.net/~z/qf_x64_compile/vs.jpg >> >> Any suggestions? >> >> Thanks, >> Andrew >> > |
|
From: Andrew M. <an...@nm...> - 2007-01-26 17:21:16
|
>You said you wanted AMD, X64 probably won't work for you. I thought X64 was AMD. I thought X64 meant you generated code for Windows x64 on AMD64 or Intel EM64T (now renamed "Intel 64") hardware. -Andrew On Fri, 26 Jan 2007, Djalma Rosa dos Santos Filho wrote: > QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html > QuickFIX Support: http://www.quickfixengine.org/services.html > > |
|
From: Djalma R. d. S. F. <drs...@gm...> - 2007-01-26 17:01:49
|
Sometimes, I find it odd too. Select New from the Menu and in the 'New Project Platform' dialog select X64 to create it for the selected project (it sucks, but sometimes you have to repeat this step for every project). You said you wanted AMD, X64 probably won't work for you. Maybe you need to install the support for AMD in your VS. On 1/26/07, Andrew Munn <an...@nm...> wrote: > > The problem is when I try to select x64 in VS8 I am allowed x64 > for some projects in the Configuration Manager but not all of them. like > this: > > http://www.nmedia.net/~z/qf_x64_compile/vs.jpg > > Any suggestions? > > Thanks, > Andrew > |
|
From: Andrew M. <an...@nm...> - 2007-01-26 16:32:16
|
The problem is when I try to select x64 in VS8 I am allowed x64 for some projects in the Configuration Manager but not all of them. like this: http://www.nmedia.net/~z/qf_x64_compile/vs.jpg Any suggestions? Thanks, Andrew |