mIRC Home    About    Download    Register    News    Help

Print Thread
#254635 20/08/15 10:37 PM
Joined: Aug 2015
Posts: 1
C
Cartman Offline OP
Mostly harmless
OP Offline
Mostly harmless
C
Joined: Aug 2015
Posts: 1
Subject says it all. Please consider making a 64-bit version.

Thanks!

Cartman #254780 02/09/15 06:39 AM
Joined: Dec 2002
Posts: 87
Babel fish
Offline
Babel fish
Joined: Dec 2002
Posts: 87
This has been suggested in the past (don't have the link at the moment, but you can search for it). mIRC will probably, in the future, move to 64-bit. However, right now, there is no performance benefit to having mIRC compiled in a 64-bit application. The simple reason is that 64-bit compiled applications will only see a relative performance boost when they deal with large quantities of data. mIRC, as far as IRC clients go, doesn't deal with nearly enough data, no matter how much you are throwing at it, to warrant the need for it to be compiled 64-bit. In fact, I'm pretty sure that mIRC's performance as a 32-bit application is better than if it were to migrate to 64-bit (mIRC performs small cache/buffer operations, and the limits that are inherent in an IRC client and server).

All in all, don't expect mIRC to be 64-bit anytime soon. I hope this helps!

Last edited by Zmodem; 02/09/15 06:40 AM.

-Zmodem
Zmodem #255515 31/10/15 02:15 PM
Joined: Apr 2003
Posts: 342
M
Fjord artisan
Offline
Fjord artisan
M
Joined: Apr 2003
Posts: 342
A 64 bit version would require all existing mIRC .DLLs to be recompiled in both 32bit and 64bit binaries. Thus, a 64bit build would have a potential downside with very little upside.


Beware of MeStinkBAD! He knows more than he actually does!
Cartman #255549 03/11/15 06:02 PM
Joined: Nov 2015
Posts: 3
B
Self-satisified door
Offline
Self-satisified door
B
Joined: Nov 2015
Posts: 3
what could mirc possibly benefit from being 64bit for?

Cartman #255570 05/11/15 09:23 PM
Joined: Oct 2003
Posts: 3,918
A
Hoopy frood
Offline
Hoopy frood
A
Joined: Oct 2003
Posts: 3,918
To clarify on some of the previous comments, consider the following points. A 64bit application allows for two improvements over 32bit apps, namely, it allows for more than 4GB of memory usage and also allows for native integer types and floats to have more precision (without incurring a performance cost).

The latter point is basically moot, since mIRC never actually exposes native integers/floats to users, and, incidentally, already supports numeric values of higher precision than even a 64bit architecture can support natively. There might be a minor perf boost to doing complex numeric calculations with larger values, but it depends on how the underlying libraries work with the conversion-- and more than likely the bottleneck will still be the actual conversion process itself (also the script engine itself, which is by far the biggest bottleneck). Realistically, you would never notice this perf boost.

As for memory usage, my mIRC process is currently sitting at 10MB of utilization, and I don't think I've ever seen it over 100MB. Even with complex scripts running, my guess is mIRC's script engine would probably lock up way before you could reliably saturate the 4GB max limit (it would require you to be crunching 4 gigs of data inside the process, which would kill the script engine). And if you did manage to do this, you're more than likely pulling data into mIRC in a way that could be easily optimized-- for example, instead of storing data in an in-memory hash table, you could move it out to an sqlite database or key-value (redis/mongo) store, where your data will probably be more efficiently stored and processed anyway. That suggestion goes even for data sizes above 500MB.

So given that neither of these benefits are relevant to mIRC, the only real reason to eventually migrate to a 64bit build would be for system compatibility. My guess is Windows will eventually stop supporting 32bit applications, but given the number of existing 32bit-only apps in the wild, that will be many many many MANY years from now, so there's really no rush.





- argv[0] on EFnet #mIRC
- "Life is a pointer to an integer without a cast"
argv0 #256941 02/03/16 06:11 PM
Joined: Apr 2010
Posts: 969
F
Hoopy frood
Offline
Hoopy frood
F
Joined: Apr 2010
Posts: 969
Originally Posted By: argv0
since mIRC never actually exposes native integers/floats to users, and, incidentally, already supports numeric values of higher precision than even a 64bit architecture can support natively.


This is sort of incorrect. mIRC currently can handle integers greater than what would fit in a 32bit or 64bit but only under certain circumstances. When it comes to mutating those numbers, mIRC fails.
Code:
alias example {

  ;; 2^63
  var %Base = 9223372036854775807

  ;; attempt to mutate the base
  var %nBase = %Base
  dec %nBase
  inc %nBase

  ;; %nBase should be the same as %Base but isn't
  echo -s Base: %Base - nBase: %nBase

  ;; Even though they are not equal
  ;; mIRC sees them as such
  echo -s IsEqual: $iif(%Base == %nBase, Yes, No)
}


--

After testing around, it seems mIRC gets fuzzy at around 55 bits. as seen by setting the %Base variable to 36028797018963978

Last edited by FroggieDaFrog; 02/03/16 06:17 PM.

I am SReject
My Stuff
Joined: Apr 2004
Posts: 871
Sat Offline
Hoopy frood
Offline
Hoopy frood
Joined: Apr 2004
Posts: 871
Without loss of precision one can go up to 2^53.

A simple way to confirm:
Code:
//var %i = 1 | while ($calc(2^ %i + 1) != $calc(2^ %i)) inc %i | echo -ag %i

Last edited by Sat; 02/03/16 10:47 PM. Reason: clarification

Saturn, QuakeNet staff
Zmodem #257391 04/04/16 12:47 AM
Joined: Mar 2006
Posts: 18
M
Pikka bird
Offline
Pikka bird
M
Joined: Mar 2006
Posts: 18
Originally Posted By: Zmodem
All in all, don't expect mIRC to be 64-bit anytime soon. I hope this helps!


This. mIRC does not deal with nearly enough data for 64-bit to be worthwhile.

Due to Windows's architecture with WOW64, it is definitely true that mIRC is going to be slower as a 32-bit application than a 64-bit application. The reason is that mIRC makes a lot of system calls. However, mIRC is not a performance-intensive program, so despite this, any benefit from going 64-bit would be microscopic.

Contrast this with when mIRC went from 16-bit to 32-bit. (Yes, mIRC has been around that long. I first used mIRC on Windows 3.1.) Win32 had massive architectural improvements versus Win16, including the redesign of Winsock. The same is not true for 64-bit; in fact, Microsoft still calls the 64-bit Windows API "Win32".

Melissa


Meow
Cartman #257393 04/04/16 07:27 AM
Joined: Feb 2015
Posts: 138
kap Offline
Vogon poet
Offline
Vogon poet
Joined: Feb 2015
Posts: 138
Originally Posted By: Cartman
Subject says it all. Please consider making a 64-bit version.

Thanks!


I think he is definitely considering it smile

Fom http://www.mirc.com/versions.txt

28/01/2015 - mIRC v7.39

Changes:
9.Updated many routines to use 32/64-bit compatible types as a first
step in preparing for a 64bit version of mIRC.


GNU Terry Pratchett - Looking for a mIRC help channel -> Check #mircscripting @ irc.swiftirc.net
Cartman #257479 14/04/16 02:43 PM
Joined: Apr 2016
Posts: 1
I
Mostly harmless
Offline
Mostly harmless
I
Joined: Apr 2016
Posts: 1
Well, 32bit support is optional for Windows Server for quite some time...


Link Copied to Clipboard