473,666 Members | 2,264 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Questions on 64 bit versions of Python

Background: I'm going to be processing some raw transaction logs that
are 30G in size. As part of this processing I may need to create some
very large dictionary structures. I will be running my scripts on a
version of Windows 2003 Server Enterprise Edition that supports 16G of
RAM. Yes, I could use a database in place of dictionaries, but I'm
looking for maximum performance.

The following page lists two 64 bit versions of Python for Windows:
http://www.python.org/download/releases/2.5.2/

For Win64-Itanium users: python-2.5.2.ia64.msi
For Win64-AMD64 users: python-2.5.2.amd64.msi

1. It looks like the 64 bit versions of Python for Windows are CPU
vendor specific, eg. it doesn't look like there's a single, universal
executable for Windows 64 bit platforms. Is this true?

2. Are there limitations to the using the 64 bit versions of Python? I
seem to remember reading that many 3rd party modules (especially Windows
OS specific modules) may not be compatible with the 64 bit versions of
Python for Windows.

3. If I wanted to run a 64 bit version of Python under Linux, would I
need to recompile from source on 64 bit version of Linux or do 64 bit
versions of Linux automatically ship with 64 bit versions of Python?
(Any recommendations on a flavor of 64 bit of Linux for the Intel
architecture would be appreciated)

4. Is there a stable version of IronPython compiled under a 64 bit
version of .NET? Anyone have experience with such a beast?

Thank you,
Malcolm
Jul 25 '08 #1
9 5670
(Any recommendations on a flavor of 64 bit of Linux for the Intel
architecture would be appreciated)
My recommendation is to use Debian or Ubuntu, as that's my personal
preference. As MAL said, any recent distribution that supports AMD64
should be fine (assuming you are not interested in Itanium, SPARC64,
HPPA (2.0), PPC64, or Alpha, which are all 64-bit flavors of Linux).

Regards,
Martin
Jul 26 '08 #2
(Any recommendations on a flavor of 64 bit of Linux for the Intel
architecture would be appreciated)
My recommendation is to use Debian or Ubuntu, as that's my personal
preference. As MAL said, any recent distribution that supports AMD64
should be fine (assuming you are not interested in Itanium, SPARC64,
HPPA (2.0), PPC64, or Alpha, which are all 64-bit flavors of Linux).

Regards,
Martin
Jul 26 '08 #3
py****@bdurham. com wrote:
>
For Win64-Itanium users: python-2.5.2.ia64.msi
For Win64-AMD64 users: python-2.5.2.amd64.msi

1. It looks like the 64 bit versions of Python for Windows are CPU
vendor specific, eg. it doesn't look like there's a single, universal
executable for Windows 64 bit platforms. Is this true?
It's true for ALL operating systems, not just Windows. The ia64 (Itanium)
and the amd64 are completely separate processors with VERY different
instruction sets.
--
Tim Roberts, ti**@probo.com
Providenza & Boekelheide, Inc.
Jul 27 '08 #4
Tim Roberts schreef:
py****@bdurham. com wrote:
>For Win64-Itanium users: python-2.5.2.ia64.msi
For Win64-AMD64 users: python-2.5.2.amd64.msi

1. It looks like the 64 bit versions of Python for Windows are CPU
vendor specific, eg. it doesn't look like there's a single, universal
executable for Windows 64 bit platforms. Is this true?

It's true for ALL operating systems, not just Windows. The ia64 (Itanium)
and the amd64 are completely separate processors with VERY different
instruction sets.
Maybe I'm wrong, but I have the impression that Malcolm is a bit
confused about the different 64-bit processors from Intel and AMD. So,
to clear things up a bit:

- The Itanium (ia64) is a 64-bit processor made by Intel, mostly for use
in high-end systems (servers etc.) IIRC. It's instruction set is indeed
completely different from the i386 instruction set (though I think
there's an emulation mode)

- AMD64 (or x86-64 or x64 or EMT64 or Intel64) is a 64-bit instruction
set from AMD which is an extension to the i386 instruction set, and runs
32-bit (and 16-bit) i386-code natively. But, and this is important,
despite the name the instruction set is also used by Intel (though they
call it EMT64 and made a few minor changes).

If you have or buy a 64-bit computer, it almost certainly uses the AMD64
instruction set, even if it has an Intel CPU (if you have an Itanium or
other 64-bit CPU, I suppose you would know; it would not be something
you buy from the shelf in a regular computer store). So you almost
certainly need the AMD64 version of Python.

--
The saddest aspect of life right now is that science gathers knowledge
faster than society gathers wisdom.
-- Isaac Asimov

Roel Schroeven
Jul 27 '08 #5
- AMD64 (or x86-64 or x64 or EMT64 or Intel64) is a 64-bit instruction
set from AMD which is an extension to the i386 instruction set, and runs
32-bit (and 16-bit) i386-code natively. But, and this is important,
despite the name the instruction set is also used by Intel (though they
call it EMT64 and made a few minor changes).
Indeed, there are (unfortunately) many names for the architecture.
Originally, AMD called it x86-64, and later renamed it to AMD64. Intel
originally implemented it under the name EM64T (for Extended Memory 64
Technology), and now calls the architecture Intel 64.

Microsoft (apparently not wanting to take sides) calls it x64.

I personally believe that whoever invents a technology also
gets to name it, so I encourage use of the name AMD gives it
(which is AMD64). That's why the Python installer has that label
in its name.

Regards,
Martin
Jul 27 '08 #6
On Sun, 27 Jul 2008 20:31:07 +0200, Martin v. Löwis wrote:
Originally, AMD called it x86-64, and later renamed it to AMD64. Intel
originally implemented it under the name EM64T (for Extended Memory 64
Technology), and now calls the architecture Intel 64.
I hadn't heard "Intel 64" before. That's a bit nervy, isn't it? Plus it
seems to conflict with their own use of "IA-64" (Intel Architecture 64)
for the Itanium (vs. "IA-32" for traditional x86).

--
09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0 -- pass it on
Jul 28 '08 #7
I hadn't heard "Intel 64" before. That's a bit nervy, isn't it? Plus it
seems to conflict with their own use of "IA-64" (Intel Architecture 64)
for the Itanium (vs. "IA-32" for traditional x86).
Indeed. Microsoft Installer has an architecture string for the MSI file;
"Intel64" there means Itanium (and AMD64 can be denoted by either
"AMD64" or "x64"). This was from a time when Intel still told people
that the future of 64-bit computing is in Itanium (and architecturally ,
I still think this would have been the right choice).

Regards,
Martin
Jul 28 '08 #8
Dear List,

Thanks for everyone's feedback - excellent detail - all my questions
have been answered.

BTW: Roel was correct that I got confused over the AMD and Intel naming
conventions regarding the 64 bit versions of Python for Windows. (I
missed that nuance that the Intel build refered to the Itanium vs. the
standard off-the-rack 64 bit version of Intel's 586/686 CPU)

Best regards,
Malcolm
Jul 29 '08 #9
py****@bdurham. com wrote:
Thanks for everyone's feedback - excellent detail - all my questions
have been answered.

BTW: Roel was correct that I got confused over the AMD and Intel naming
conventions regarding the 64 bit versions of Python for Windows. (I
missed that nuance that the Intel build refered to the Itanium vs. the
standard off-the-rack 64 bit version of Intel's 586/686 CPU)
Frankly, I'm very glad you did get confused: I've learnt more
about the various 64-bit architectures in this thread than
I ever thought I'd need to know :)

TJG
Jul 29 '08 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

7
2115
by: Ted | last post by:
I would like to collect opinions on which versions of Python should be considered watershed versions. By this I mean versions which are stable and contain significant landmark features. As an example, in Windows operating systems, I would consider Windows 98SE to be the pre-NT watershed release and Windows 2K to be the post-NT release. Thanks.
4
1698
by: Robert Oschler | last post by:
Hello, (Note: if there is a FAQ that covers this issue just give me the URL. I checked python.org's General and Windows FAQ's and didn't see anything.) I am about to upgrade from Python 2.2 to 2.3. Here are a few questions: - Do I need to uninstall 2.2 first? - Are there any paths I should add to my Win 2k PATH environment variable? - I am running on Windows 2000 and I have several site-packages installed.
2
1357
by: bearophile | last post by:
Hello, I have few more things to say/ask (left from a discussion in another Python Newsgroup). Is it possibile (and useful) to write few small sub-sections of the Python interpreter in Assembly for Pentium (III/IV)/AMD, to speed up the interpreter for Win/Linux boxes running on those CPUs? (Such parts don't replace the C versions, kept for compatibilty). I think the HLA (High Level Assembly) language can be fit for this purpose, it's a...
0
1139
by: Philippe C. Martin | last post by:
Hi, I have asked two questions lately and have not received any answer yet, so I wonder whether the questions are irrelevant, silly, already answered for, ...., ? Please allow me to summarize them: 1) How to I keep my BDB GUI frontend from stepping through all imported python libraries when I debug my code ? I am currently ovewriting user_line and
20
1876
by: qscomputing | last post by:
Hi, I've developed in several other languages and have recently found Python and I'm trying to use it in the shape of the PythonCard application development tool. My two questions: 1. What is the easiest way to create a for loop in the style I'm used to from Delphi ie:
12
2478
by: John Salerno | last post by:
I've been looking around and reading, and I have a few more questions about SQLite in particular, as it relates to Python. 1. What is the current module to use for sqlite? sqlite3? or is that not out until Python 2.5? 2. What's the difference between sqlite and pysqlite? Do you need both, just one, or is one an older version of the same thing? 3. What's the difference between the command line program called sqlite3
4
3070
by: Talbot Katz | last post by:
Greetings Pythoners! I hope you'll indulge an ignorant outsider. I work at a financial software firm, and the tool I currently use for my research is R, a software environment for statistical computing and graphics. R is designed with matrix manipulation in mind, and it's very easy to do regression and time series modeling, and to plot the results and test hypotheses. The kinds of functionality we rely on the most are standard and...
1
1814
by: M.-A. Lemburg | last post by:
On 2008-07-25 08:13, python@bdurham.com wrote: Yes. But then Intel Itanium is being phased out anyway and the AMD64 build works on both Intel and AMD processors. True.
6
1130
by: LessPaul | last post by:
I recently discovered Python and see it as a great language to use for personal projects (and more). I made my living for over a decade as a coder in C, C++, ADA, Fortran, and Assembly before moving to systems engineering. I'm now retired, and would love to code again. I see Python as the perfect language to get a good program working in a short time. My question is in regard to GUI platforms. My primary target would be Windows, but I...
0
8866
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8781
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
8550
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
7381
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6191
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5662
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
1
2769
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
2006
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
2
1769
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.