Miranda 64bit?

125 views
Skip to first unread message

mullDie

unread,
Jun 18, 2009, 1:48:53 AM6/18/09
to Miranda IM Develop
When? :-)

Lastwebpage

unread,
Jun 18, 2009, 11:28:18 AM6/18/09
to Miranda IM Develop
WHY?
and what about http://forums.miranda-im.org/showthread.php?t=5218& you
read this?

On 18 Jun., 07:48, mullDie <mull...@gmail.com> wrote:
> When? :-)

Adam Strzelecki

unread,
Jun 19, 2009, 9:03:51 AM6/19/09
to miranda-i...@googlegroups.com
I don't get what's the sense of having 64-bit Miranda. I don't see how
it can improve anything.
This isn't image compression or computer chess software where 64-bit
makes sense. Neither M won't hit 2GB VM process memory barrier,
because it doesn't need so much memory at all unless we have some
leaking plugin ;P
So having 64-bit build will bring no more but memory usage bump, and
maybe joy of some nerds owning 64-bit Windows that think "I need all
my programs now 64-bit including Miner, and Notepad, this will make my
life better".

Cheers,
--
Adam

Boris Krasnovskiy

unread,
Jun 19, 2009, 9:17:13 AM6/19/09
to miranda-i...@googlegroups.com
Well,

in essence yes, all future computers and OSes will be 64-bit. Major computer manufacturers even today ship mostly 64 bit OS preinstalled. We need to stay in-sync with time, and time for 32-bit computing is running out. And if there is no compelling reason for upgrade for you, wait a bit and you will get one. 

Your life will be better when you run native OS applications not inside virtual machine as virtual machine is buggier and always support only subset of the API, and features.

--
Thank you,
Boris Krasnovskiy

Adam Strzelecki

unread,
Jun 19, 2009, 9:39:01 AM6/19/09
to miranda-i...@googlegroups.com
> in essence yes, all future computers and OSes will be 64-bit. Major
> computer manufacturers even today ship mostly 64 bit OS
> preinstalled. We need to stay in-sync with time, and time for 32-bit
> computing is running out. And if there is no compelling reason for
> upgrade for you, wait a bit and you will get one.

I presume you are aware of main reason of introducing 64-bit
architecture, which are more less hitting the barrier of 2GB address
space in 32-bit applications.
Also as I consequence of having 64-bit architecture we got more
registers which are now 64-bit, which means faster integer operations.
None of those advantages are IMHO relative to Miranda, which is small
memory footprint, event driven, networking application. But in M case
64-bit will bring twice more memory usage for structures using ints
and pointers, and also twice size of 64-bit binaries, but no
significant performance or user experience improvement (excluding
mental experience ;P).

> Your life will be better when you run native OS applications not
> inside virtual machine as virtual machine is buggier and always
> support only subset of the API, and features.

Virtual Machine??? It isn't about IA64 but AMD64, where's no Virtual
Machine, 32-bit code is executed by the CPU natively using cropped to
32-bit subset of 64-bit registers when working in 32-bit mode. So
unless indeed some version of Windows will run only 64-bit code
(because it doesn't ship anymore 32-bit system libraries) or there are
some important functions that exists only in 64-bit system library set
there's IMHO NO advantage of having 64-bit build.

Regards,
--
Adam

Boris Krasnovskiy

unread,
Jun 19, 2009, 7:19:05 PM6/19/09
to miranda-i...@googlegroups.com

Boris Krasnovskiy

unread,
Jun 19, 2009, 7:37:43 PM6/19/09
to miranda-i...@googlegroups.com
I presume you are aware of main reason of introducing 64-bit
architecture, which are more less hitting the barrier of 2GB address
space in 32-bit applications.

That's interesting historical information, but it will remain historical. That's how things started now they have grown up and they are different. 64-bit  architecture have taken life on it's own, and it purposes are different.


Also as I consequence of having 64-bit architecture we got more
registers which are now 64-bit, which means faster integer operations.
None of those advantages are IMHO relative to Miranda, which is small
memory footprint, event driven, networking application. But in M case
64-bit will bring twice more memory usage for structures using ints
and pointers, and also twice size of 64-bit binaries, but no
significant performance or user experience improvement (excluding
mental experience ;P).

Yes, but this is tiny in comparison with need to load 64 bit virtual machine (WOW64).
 

Virtual Machine??? It isn't about IA64 but AMD64, where's no Virtual
Machine, 32-bit code is executed by the CPU natively using cropped to
32-bit subset of 64-bit registers when working in 32-bit mode.

This code execution stuff matters only when you work on microcontroller level, we are not. We are working under OS and what important is how OS handles it.  And, there is Virtual machine, it's called WOW64, it translates 32 bit Windows API calls into native 64 bit windows kernel and other libraries calls, does 32-bit task scheduling, etc.  
 
So
unless indeed some version of Windows will run only 64-bit code
(because it doesn't ship anymore 32-bit system libraries) or there are
some important functions that exists only in 64-bit system library set
there's IMHO NO advantage of having 64-bit build.

And this will happen too very soon, as soon as majority transition to x64. Companies will abolish 32 bit development, quickly. And for W
 

Adam Strzelecki

unread,
Jun 20, 2009, 9:55:54 AM6/20/09
to miranda-i...@googlegroups.com
Boris Krasnovskiy wrote:

> That's interesting historical information, but it will remain
> historical. That's how things started now they have grown up and
> they are different. 64-bit architecture have taken life on it's
> own, and it purposes are different.

What different purposes? Sell more new Windows 7? Or new computers for
doing MS Office work? Do you believe in what you say? That's maybe
true in Microsoft overhyped marketing world.
Do you know that DEC Alpha released in 1992 is 64-bit, and Win NT &
Win 2000 builds for this CPU exist for quite a while. So why there's
no M build for Win 2000 alpha!? In comparison to AMD64 or IA64
Windows, Alpha Windows won't run at all x86 code.

> Yes, but this is tiny in comparison with need to load 64 bit virtual
> machine (WOW64).

You're wrong. Please read for instance: http://en.wikipedia.org/wiki/WOW64
WOW64 on AMD64 does almost nothing, just switches CPU state which
takes insignificant amount of time, take a look at the size of the
library.

> This code execution stuff matters only when you work on
> microcontroller level, we are not. We are working under OS and what
> important is how OS handles it. And, there is Virtual machine, it's
> called WOW64, it translates 32 bit Windows API calls into native 64
> bit windows kernel and other libraries calls, does 32-bit task
> scheduling, etc.

As above, you're wrong. There's no VM on AMD64. And I believe AMD64 is
what we call 64-bit in this discussion, right?

There's indeed VM in IA64 builds, but that's completely different
architecture, so you may be right if you want to build IA64 Miranda :)
But I don't see who gonna use such a build on IA64 servers that cost
thousands of bucks. Maybe some crazy administrators living in server
rooms.

> And this will happen too very soon, as soon as majority transition
> to x64. Companies will abolish 32 bit development, quickly.

Yeah, sure, heard it already couple of times during releases of DEC
Alpha, IBM PowerPC x64, Intel IA64 starting 1992.
Unfortunately companies that really SHOULD move to 64-bit with their
software such as Adobe doesn't really rush to do so!
Plenty of ppl waited for 64-bit Photoshop for 4 years since first
Windows XP x64 release, and now Adobe still doesn't bother to get 64-
bit PS on Mac.

Regards,
--
Adam

Boris Krasnovskiy

unread,
Jun 20, 2009, 11:09:17 AM6/20/09
to miranda-i...@googlegroups.com
Well they were not rushing before, but everybody does rush now.
 
Historically:

It's PPC or Alpha days, these CPU had 0  consumer support. PPC was MAC and high end embedded applications, and it performance sucked for a desktop market. Alpha was mostly used on servers. And when Alpha arrived there was a lot of expectation for 64-bit transition if MS could make a stable OS for it. But Digital went under before this could happen (mostly due to missteps on the server market), killing the hopes for transition and 64 bit OS development. Alpha group was spawn of as separate company but they did not have financial resources and community influence of Digital to step up to the task and taking on Intel. The situation froze for a while until AMD stepped up to the challenge. They did develop 64-bit consumer CPU and was able to stay in business long enough for MS to develop stable 64-bit OS and hardware vendors to develop drivers. It took 6 years make it happen.

Now:

Now situation changed most people who purchased computers within last 3 years have 64-bit compatible CPUs. MS 64-bit OS is stable and performs much better then 32-bit one. It's cleaner then 32-bit counter part as with transition to 64-bit they removed a lot of Windows 3.1 and Windows 98 era API.  Hardware vendors finally developed stable drivers for the 64-bit architecture. 

Now it's time for software vendors to step in:
The next release of MS Office and Visual Studio will have 64-bit Versions, IE does have 64-bit version as well. And all other software vendors rushing in. Most of the sales for Windows 7 is expected to be x64. And as time goes on 32 bit support will start to vanish, nobody have money to develop software for  2 different architectures, regardless of the technical merits. And all new customers - customers who actually pay will go to x64. (We just had this exact discussion about Win 9x support - didn't we :) )

Technical stuff:

1. Size of "int" and other basic types did not change in MS 64-bit implementation, it's still 32 bit. (It did change to 64 bit in all Unix flavors though) 
2. Size of pointers did change to 64-bit as expected.

So the actual growth in memory footprint is not that much and executables is not twice the size.

WOW64, even though it's "small" (looking on my W7 installation 3 dlls called wow64 have 700KB code size and this is not all memory that required), it's much larger then extra 4 bytes in pointers Miranda use.

Lastwebpage

unread,
Jun 20, 2009, 2:34:05 PM6/20/09
to Miranda IM Develop
You forget one important point...
Install one of the addons from the addon site and see what happens.

If you really think you need it, yes, please use the files from the
link above.

But only for the reason "all other apps have 64 versions"?
Sorry, I decline it, not at one of the official miranda-im websites
and not until Windows 9 have 64bit support only. "We" need not really
1-3 Versions from the same plugin more, only just for fun.

Peter

Boris Krasnovskiy

unread,
Jun 20, 2009, 2:51:59 PM6/20/09
to miranda-i...@googlegroups.com
Well,

distribution problems we have and need to fix them. Does not mean we should abolish moving forward.

Old unmaintained plugins should not stop us, yes initially  a lot of people will scream for a bit but then somebody will adopt it and we will get a new plugin maintainer :). So nothing but good will come out of this. 

Lyon Lim

unread,
Jun 21, 2009, 2:10:58 AM6/21/09
to miranda-i...@googlegroups.com
FYI, The addons system can be easily modified to indicate support for 64bit Miranda versions (and exclude all old plugins if user is looking for 64bit compatibility).

Lyon

2009/6/21 Boris Krasnovskiy <bor...@gmail.com>

Boris Krasnovskiy

unread,
Jun 21, 2009, 8:12:31 AM6/21/09
to miranda-i...@googlegroups.com
That would be really nice.

Paul Yaroshenko

unread,
Jun 26, 2009, 8:36:44 AM6/26/09
to miranda-i...@googlegroups.com
Boris

Did you perform 32-to-64 porting even once? Please, understand, the main problem is not doublesized code. Btw, didn't you forget that opcode become 64bit too? :) But it's not the point.
The point is that porting to 64bit is pain. Not correct. It is a PAIN. I happen to make some porting and it NEVER went smooth.
And I suppose you are aware that 32-bit DLLs can't be loaded into 64bit process and visa versa. So you can say "bye-bye" to all plugins.

So on the one hand we have:
* lots of efforts on porting.
* additional build (64bit UNICODE)
* bloated binary code and memory footprint.
* incompatibility with ANY existing plugin. And due to this, perhaps porting of numerous popular plugins as well.

On the other hand we have... Miranda 64 can call native 64bit API?.. wow...
Does it make sense for you? I would remind you that development today targets toward .NET and noone cares about it being slow and resource hog.

As for you forecasts that 64bit will inevitably eject all 32bit support I doubt it will happen in near 20 years. Even 16bit is not dropped yet, though 32bit Windows exist from 1992.
Also, considering boom of network oriented systems (netbooks, cellulars etc) which are very limited in resourses, I doubt that support for 64bit will be vital at all.
--
Time is the best teacher.
Unfortunately it kills all its students

Boris Krasnovskiy

unread,
Jun 26, 2009, 10:25:01 AM6/26/09
to miranda-i...@googlegroups.com
Yes, 

all core have been ported to 64-bit and it is working well. I ported all my plugins and some sje's  ones as well.

If you are capable of compiling from source you can use it today. The discussion here is more about, the fact that some people oppose the idea for official release.

Lastwebpage

unread,
Jun 26, 2009, 10:56:49 AM6/26/09
to Miranda IM Develop
Sorry, this is only a test message for this group.
Reply all
Reply to author
Forward
0 new messages