Re: [twsocket] 64-Bit Processors Issue

2006-06-12 Thread Marcelo Grossi
Hi,

I don't see why your first version could not work. I have programs which
 basically does the same thing (calling several Send in a row). And I can't
 imagine why an AMD processor whould fail doing that !

Me neither.

 btw: Your second versin is much faster (well 50 iterations probably 
 doesn't
 do any difference). You can also make the code a little bit clear by
 removing the test and puting one more send at the end of the loop:

 for I := 0 to Count-1 do begin
   // Same buffer assemblage
   BuildMessage(aString, aBuffer);
   Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
 end;
 Socket.Send(nil, 0);


Thanks for the tip.

Marcelo

- Original Message - 
From: Francois PIETTE [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Saturday, June 10, 2006 4:31 AM
Subject: Re: [twsocket] 64-Bit Processors Issue


I don't see why your first version could not work. I have programs which
 basically does the same thing (calling several Send in a row). And I can't
 imagine why an AMD processor whould fail doing that !

 btw: Your second versin is much faster (well 50 iterations probably 
 doesn't
 do any difference). You can also make the code a little bit clear by
 removing the test and puting one more send at the end of the loop:

 for I := 0 to Count-1 do begin
   // Same buffer assemblage
   BuildMessage(aString, aBuffer);
   Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
 end;
 Socket.Send(nil, 0);


 --
 Contribute to the SSL Effort. Visit http://www.overbyte.be/eng/ssl.html
 --
 [EMAIL PROTECTED]
 http://www.overbyte.be


 - Original Message - 
 From: Marcelo Grossi [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Friday, June 09, 2006 10:58 PM
 Subject: Re: [twsocket] 64-Bit Processors Issue


 Hello again folks,

I managed to fix the bug I told you guys about. Aparently it is
 endeed
 an ICS related problem or AMD's fault, can't be concise on that. Here's 
 an
 overview of the problem with the solution in sample codes:

Problem: The server did not received the packet from the client, only
 the first one. The packets in question were being sent from inside a for
 loop (small one, about 50 iterations). Here is a sample code of the
 faulty
 version of the code (Delphi 6):

 for I := 0 to Count-1 do
begin
// This line being the assembly of the buffer,
// it is a very clean code and is a very fast function and very 
 few
 data.
// Buffer size estimations are about 20- bytes.
BuildMessage(aString, aBuffer);
// sends rapid-fire buffers to the server
Socket.Send(@aBuffer[0], Length(arBuffer));
end;

Solution: Using the cumulative send function provided with ICS the
 problem is strangely resolved and the server receves ok the buffers (in
 this
 case, the single buffer made of the small buffers). Here is the sample
 code:

 for I := 0 to Count-1 do
begin
// Same buffer assemblage
BuildMessage(aString, aBuffer);
// Only sends the packet when the processing is finished (last
 iteration)
if I = (Count - 1) then
Socket.Send(@aBuffer[0], Length(aBuffer))
else
   Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
end;

I hope I could be of any help and I'm pretty sure this can be
 reproduced
 (using the sample codes above) in any client/server model being the 
 client
 an AMD 64-Bit processor (can't say much about Intel 64-Bit processors
 because we could not test it out). Anyways, thank you very much for all
 your
 responses!

 Best regards,

 Marcelo Grossi

 - Original Message - 
 From: Arno Garrels [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Friday, June 09, 2006 8:24 AM
 Subject: Re: [twsocket] 64-Bit Processors Issue


 Marcelo Grossi wrote:
 Hello again,

 I'm new to this list and since I've been getting your messages, I
 was wondering if anyone got the message I sent about the problem I'm
 having with the 64-Bit AMD processors. I really really need your help
 on this, because I've never altered the source code of ICS and the
 problem mentioned (see below) only happens with users of 64-bit AMD
 (never tested with Intel) processors.

 It is very very unlikely that ICS in combination with AMD64 is the
 reason. I personally had troubles with hardware DEP (nx-flag) caused
 by another third party component, however I got at least a very strange
 exception.

 ---
 Arno Garrels [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 -- 
 To unsubscribe or change your settings

Re: [twsocket] 64-Bit Processors Issue

2006-06-12 Thread Marcelo Grossi
Hi Peter,

All I did for months was try to find the cause of the problem in MY 
work. Then I decided to try this list, and all you fellow gave me your 
opinions wich were tested and helped me out in finding the error. And most 
probably the problem resides in either ICS or AMD64 itself, because believe 
it or not, ALL AMD64 testers I've got so far presented the same issue (by 
all I mean the two users with that machine configuration, one AMD Athlon 64 
and the other AMD Sempron).
With the corrections made both users got themselves a working program 
(tested). Now, why the error exists and in whom the guilt resides? I really 
can't tell. Could be in my application, I can't discard that, but I just 
thought of letting you guys know. Who knows if there's an AMD64 user in this 
list and he has the time to implement the code below just for testing? 
Imagine if he manages to reproduce the same problem as I did? We may be 
discovering a serious (in my opinion) problem with either AMD 64 based 
processors or the ICSv5 component.
I think it's worth the shot ...

Marcelo.

- Original Message - 
From: Borosnyay Péter [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Saturday, June 10, 2006 6:13 AM
Subject: Re: [twsocket] 64-Bit Processors Issue


 Hello Marcelo,

   Your problem has nothing to do with AMD processors. It was by 
 coincidence that the machine that produced the problem had an AMD 
 processor. You should try an Intel one also. As far as I know, socket 
 implementations doesn't depend on or differ by processor type. They should 
 not.
 When you track down a problem, first always try to find the cause in YOUR 
 work, among the things that YOU did.
 People (including myself) are feeble and tend to forget this. The more 
 experience one has, the higher the probability is, to forget the above.
 Colleagues, NEVER forget it !

 I wish good luck for everyone !

 Cheers,

 Peter


 On Fri, 09 Jun 2006 22:58:14 +0200, Marcelo Grossi 
 [EMAIL PROTECTED] wrote:

 Hello again folks,

 I managed to fix the bug I told you guys about. Aparently it is 
 endeed
 an ICS related problem or AMD's fault, can't be concise on that. Here's 
 an
 overview of the problem with the solution in sample codes:

 Problem: The server did not received the packet from the client, only
 the first one. The packets in question were being sent from inside a for
 loop (small one, about 50 iterations). Here is a sample code of the 
 faulty
 version of the code (Delphi 6):

 for I := 0 to Count-1 do
 begin
 // This line being the assembly of the buffer,
 // it is a very clean code and is a very fast function and very 
 few
 data.
 // Buffer size estimations are about 20- bytes.
 BuildMessage(aString, aBuffer);
 // sends rapid-fire buffers to the server
 Socket.Send(@aBuffer[0], Length(arBuffer));
 end;

 Solution: Using the cumulative send function provided with ICS the
 problem is strangely resolved and the server receves ok the buffers (in 
 this
 case, the single buffer made of the small buffers). Here is the sample 
 code:

 for I := 0 to Count-1 do
 begin
 // Same buffer assemblage
 BuildMessage(aString, aBuffer);
 // Only sends the packet when the processing is finished (last
 iteration)
 if I = (Count - 1) then
 Socket.Send(@aBuffer[0], Length(aBuffer))
 else
Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
 end;

 I hope I could be of any help and I'm pretty sure this can be 
 reproduced
 (using the sample codes above) in any client/server model being the 
 client
 an AMD 64-Bit processor (can't say much about Intel 64-Bit processors
 because we could not test it out). Anyways, thank you very much for all 
 your
 responses!

 Best regards,

 Marcelo Grossi

 - Original Message -
 From: Arno Garrels [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Friday, June 09, 2006 8:24 AM
 Subject: Re: [twsocket] 64-Bit Processors Issue


 Marcelo Grossi wrote:
 Hello again,

 I'm new to this list and since I've been getting your messages, I
 was wondering if anyone got the message I sent about the problem I'm
 having with the 64-Bit AMD processors. I really really need your help
 on this, because I've never altered the source code of ICS and the
 problem mentioned (see below) only happens with users of 64-bit AMD
 (never tested with Intel) processors.

 It is very very unlikely that ICS in combination with AMD64 is the
 reason. I personally had troubles with hardware DEP (nx-flag) caused
 by another third party component, however I got at least a very strange
 exception.

 ---
 Arno Garrels [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html

 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

Re: [twsocket] 64-Bit Processors Issue

2006-06-10 Thread Francois PIETTE
I don't see why your first version could not work. I have programs which 
basically does the same thing (calling several Send in a row). And I can't 
imagine why an AMD processor whould fail doing that !

btw: Your second versin is much faster (well 50 iterations probably doesn't 
do any difference). You can also make the code a little bit clear by 
removing the test and puting one more send at the end of the loop:

for I := 0 to Count-1 do begin
   // Same buffer assemblage
   BuildMessage(aString, aBuffer);
   Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
end;
Socket.Send(nil, 0);


--
Contribute to the SSL Effort. Visit http://www.overbyte.be/eng/ssl.html
--
[EMAIL PROTECTED]
http://www.overbyte.be


- Original Message - 
From: Marcelo Grossi [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Friday, June 09, 2006 10:58 PM
Subject: Re: [twsocket] 64-Bit Processors Issue


 Hello again folks,

I managed to fix the bug I told you guys about. Aparently it is 
 endeed
 an ICS related problem or AMD's fault, can't be concise on that. Here's an
 overview of the problem with the solution in sample codes:

Problem: The server did not received the packet from the client, only
 the first one. The packets in question were being sent from inside a for
 loop (small one, about 50 iterations). Here is a sample code of the 
 faulty
 version of the code (Delphi 6):

 for I := 0 to Count-1 do
begin
// This line being the assembly of the buffer,
// it is a very clean code and is a very fast function and very few
 data.
// Buffer size estimations are about 20- bytes.
BuildMessage(aString, aBuffer);
// sends rapid-fire buffers to the server
Socket.Send(@aBuffer[0], Length(arBuffer));
end;

Solution: Using the cumulative send function provided with ICS the
 problem is strangely resolved and the server receves ok the buffers (in 
 this
 case, the single buffer made of the small buffers). Here is the sample 
 code:

 for I := 0 to Count-1 do
begin
// Same buffer assemblage
BuildMessage(aString, aBuffer);
// Only sends the packet when the processing is finished (last
 iteration)
if I = (Count - 1) then
Socket.Send(@aBuffer[0], Length(aBuffer))
else
   Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
end;

I hope I could be of any help and I'm pretty sure this can be 
 reproduced
 (using the sample codes above) in any client/server model being the client
 an AMD 64-Bit processor (can't say much about Intel 64-Bit processors
 because we could not test it out). Anyways, thank you very much for all 
 your
 responses!

 Best regards,

 Marcelo Grossi

 - Original Message - 
 From: Arno Garrels [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Friday, June 09, 2006 8:24 AM
 Subject: Re: [twsocket] 64-Bit Processors Issue


 Marcelo Grossi wrote:
 Hello again,

 I'm new to this list and since I've been getting your messages, I
 was wondering if anyone got the message I sent about the problem I'm
 having with the 64-Bit AMD processors. I really really need your help
 on this, because I've never altered the source code of ICS and the
 problem mentioned (see below) only happens with users of 64-bit AMD
 (never tested with Intel) processors.

 It is very very unlikely that ICS in combination with AMD64 is the
 reason. I personally had troubles with hardware DEP (nx-flag) caused
 by another third party component, however I got at least a very strange
 exception.

 ---
 Arno Garrels [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be


 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] 64-Bit Processors Issue

2006-06-10 Thread Borosnyay Péter
Hello Marcelo,

   Your problem has nothing to do with AMD processors. It was by coincidence 
that the machine that produced the problem had an AMD processor. You should try 
an Intel one also. As far as I know, socket implementations doesn't depend on 
or differ by processor type. They should not.
When you track down a problem, first always try to find the cause in YOUR work, 
among the things that YOU did.
People (including myself) are feeble and tend to forget this. The more 
experience one has, the higher the probability is, to forget the above.
Colleagues, NEVER forget it !

I wish good luck for everyone !

Cheers,

Peter


On Fri, 09 Jun 2006 22:58:14 +0200, Marcelo Grossi [EMAIL PROTECTED] wrote:

 Hello again folks,

 I managed to fix the bug I told you guys about. Aparently it is endeed
 an ICS related problem or AMD's fault, can't be concise on that. Here's an
 overview of the problem with the solution in sample codes:

 Problem: The server did not received the packet from the client, only
 the first one. The packets in question were being sent from inside a for
 loop (small one, about 50 iterations). Here is a sample code of the faulty
 version of the code (Delphi 6):

 for I := 0 to Count-1 do
 begin
 // This line being the assembly of the buffer,
 // it is a very clean code and is a very fast function and very few
 data.
 // Buffer size estimations are about 20- bytes.
 BuildMessage(aString, aBuffer);
 // sends rapid-fire buffers to the server
 Socket.Send(@aBuffer[0], Length(arBuffer));
 end;

 Solution: Using the cumulative send function provided with ICS the
 problem is strangely resolved and the server receves ok the buffers (in this
 case, the single buffer made of the small buffers). Here is the sample code:

 for I := 0 to Count-1 do
 begin
 // Same buffer assemblage
 BuildMessage(aString, aBuffer);
 // Only sends the packet when the processing is finished (last
 iteration)
 if I = (Count - 1) then
 Socket.Send(@aBuffer[0], Length(aBuffer))
 else
Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
 end;

 I hope I could be of any help and I'm pretty sure this can be reproduced
 (using the sample codes above) in any client/server model being the client
 an AMD 64-Bit processor (can't say much about Intel 64-Bit processors
 because we could not test it out). Anyways, thank you very much for all your
 responses!

 Best regards,

 Marcelo Grossi

 - Original Message -
 From: Arno Garrels [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Friday, June 09, 2006 8:24 AM
 Subject: Re: [twsocket] 64-Bit Processors Issue


 Marcelo Grossi wrote:
 Hello again,

 I'm new to this list and since I've been getting your messages, I
 was wondering if anyone got the message I sent about the problem I'm
 having with the 64-Bit AMD processors. I really really need your help
 on this, because I've never altered the source code of ICS and the
 problem mentioned (see below) only happens with users of 64-bit AMD
 (never tested with Intel) processors.

 It is very very unlikely that ICS in combination with AMD64 is the
 reason. I personally had troubles with hardware DEP (nx-flag) caused
 by another third party component, however I got at least a very strange
 exception.

 ---
 Arno Garrels [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html

 --
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be





-- 
FIGYELEM !  Ennek a levélnek a végén NINCS REKLÁM !!!
észrevetted ?

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Re: [twsocket] 64-Bit Processors Issue

2006-06-09 Thread Arno Garrels
Marcelo Grossi wrote:
 Hello again,
 
 I'm new to this list and since I've been getting your messages, I
 was wondering if anyone got the message I sent about the problem I'm
 having with the 64-Bit AMD processors. I really really need your help
 on this, because I've never altered the source code of ICS and the
 problem mentioned (see below) only happens with users of 64-bit AMD
 (never tested with Intel) processors.

It is very very unlikely that ICS in combination with AMD64 is the
reason. I personally had troubles with hardware DEP (nx-flag) caused
by another third party component, however I got at least a very strange
exception. 

---
Arno Garrels [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] 64-Bit Processors Issue

2006-06-09 Thread Marcelo Grossi
Hello again folks,

I managed to fix the bug I told you guys about. Aparently it is endeed 
an ICS related problem or AMD's fault, can't be concise on that. Here's an 
overview of the problem with the solution in sample codes:

Problem: The server did not received the packet from the client, only 
the first one. The packets in question were being sent from inside a for 
loop (small one, about 50 iterations). Here is a sample code of the faulty 
version of the code (Delphi 6):

for I := 0 to Count-1 do
begin
// This line being the assembly of the buffer,
// it is a very clean code and is a very fast function and very few 
data.
// Buffer size estimations are about 20- bytes.
BuildMessage(aString, aBuffer);
// sends rapid-fire buffers to the server
Socket.Send(@aBuffer[0], Length(arBuffer));
end;

Solution: Using the cumulative send function provided with ICS the 
problem is strangely resolved and the server receves ok the buffers (in this 
case, the single buffer made of the small buffers). Here is the sample code:

for I := 0 to Count-1 do
begin
// Same buffer assemblage
BuildMessage(aString, aBuffer);
// Only sends the packet when the processing is finished (last 
iteration)
if I = (Count - 1) then
Socket.Send(@aBuffer[0], Length(aBuffer))
else
   Socket.PutDataInSendBuffer(@aBuffer[0], Length(aBuffer));
end;

I hope I could be of any help and I'm pretty sure this can be reproduced 
(using the sample codes above) in any client/server model being the client 
an AMD 64-Bit processor (can't say much about Intel 64-Bit processors 
because we could not test it out). Anyways, thank you very much for all your 
responses!

Best regards,

Marcelo Grossi

- Original Message - 
From: Arno Garrels [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Friday, June 09, 2006 8:24 AM
Subject: Re: [twsocket] 64-Bit Processors Issue


 Marcelo Grossi wrote:
 Hello again,

 I'm new to this list and since I've been getting your messages, I
 was wondering if anyone got the message I sent about the problem I'm
 having with the 64-Bit AMD processors. I really really need your help
 on this, because I've never altered the source code of ICS and the
 problem mentioned (see below) only happens with users of 64-bit AMD
 (never tested with Intel) processors.

 It is very very unlikely that ICS in combination with AMD64 is the
 reason. I personally had troubles with hardware DEP (nx-flag) caused
 by another third party component, however I got at least a very strange
 exception.

 ---
 Arno Garrels [TeamICS]
 http://www.overbyte.be/eng/overbyte/teamics.html

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] 64-Bit Processors Issue

2006-06-08 Thread Marcelo Grossi
Hello again,

I'm new to this list and since I've been getting your messages, I was 
wondering if anyone got the message I sent about the problem I'm having with 
the 64-Bit AMD processors. I really really need your help on this, because 
I've never altered the source code of ICS and the problem mentioned (see 
below) only happens with users of 64-bit AMD (never tested with Intel) 
processors.
If anyone had a similar issue concerning 64-bit users please let me know 
if there is a solution, or else I will be forced to withdraw from using your 
excelent component, given the growing number os 64-bit users. And I really 
like your component (a lot).

Thanks for the attention,

Marcelo Grossi

 Hello,

I'm not entirely sure this is a problem related to ICS but since I 
 could not narrow down another possibility I decided to check up on this 
 list to see if anyone else has (is) esperienced(ing) the same problem as I 
 am. Frist of all I have a client/server program written in Delphi 6. This 
 programa uses your TWSocket component for connection between the clients 
 and my server (both sides are using ICS).
For most clients we have absolutely no problem at all, the system works 
 like a charm (the client logs on to the server that sends back to the 
 client some information and clock signals - regular cli/ser model). 
 Recently we had a client that owns an AMD64 processor (AMD Athlon64). This 
 client connection OK to our server, but he doesnt get any data (nor the 
 clock signal) back and the connections times out resulting in an atempt to 
 reconnect, wich starts the cycle all over again.
Is there any known issue regarding this? If so, are there any 
 workarounds or fixes? Any information would be much apreciated.

 Regards,

 Marcelo Grossi 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] 64-Bit Processors Issue

2006-06-08 Thread Angus Robertson - Magenta Systems Ltd
 If anyone had a similar issue concerning 64-bit users please 
 let me know if there is a solution, or else I will be forced to 
 withdraw from using your excelent component, given the growing 
 number os 64-bit users. And I really like your component (a lot).

Delphi is a 32-bit compiler, it does not know about 64-bit processors 
and does not use 64-bit instructions.  

So there is no way the ICS component, which is pure Delphi Object 
Pascal, can be doing anything 64-but specific.  

So your client's problems may be:

1 - buggy Intel microcode emulation by AMD
2 - buggy Windows implementation on AMD
3 - your program uses other components that are buggy on AMD, perhaps 
using processor specific assembler, such as fastcode or fastmm4?  

So stopping using ICS is highly unlikely to solve any of your problems.

Personally, I've always avoided non-Intel processors and chipsets, the 
possible incompatibilities and support problems just don't warrant the 
smaller cost saving or speed improvement over Genuine Intel.  

Angus
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be