Is Itanium the first 64-bit casualty?

  • Thread starter Thread starter Yousuf Khan
  • Start date Start date
Evgenij Barsukov said:
Either they improved the beta-version, or there are some prgrams that can benefit
already (AMD reports 57% improvement with Win64 beta):
http://www.amd.com/us-en/Corporate/VirtualPressRoom/0,,51_104_543~87018,00.html

The beta version is several hundred builds ahead of the public trial
version, but other than that AMD press release I've never seen any
benchmarks of the beta; I assume AMD got a waiver of the NDA because it was
good news they wanted to report.

According to a closed MS newsgroup, the public trial version will be updated
Real Soon Now to catch up with the beta. That's good news, as the original
release was in Sep 2003 and there've been no updates so far; the most
popular topic on the newsgroup is how to uninstall XP64 because people are
frustrated with the lack of progress in performance and driver support.

S
 
Stefan Monnier wrote:

[SNIP]
Maybe. I guess it could be pretty comparable (but I don't believe in the
"more control" because the user code would only control segment "pointers"
while the base-address, size and access rights would most likely not be
loaded/unloaded explicitly).

But would segments save you from using paging, really?

Stuff like sparse addressing would be "hard" without paging or
something akin to it. In most other respects I think a friendly
segmentation scheme would be adequate. :)

Cheers,
Rupert
 
Stephen Sprunk wrote:

http://www.amd.com/us-en/Corporate/VirtualPressRoom/0,,51_104_543~87018,00.html

The beta version is several hundred builds ahead of the public trial
version, but other than that AMD press release I've never seen any
benchmarks of the beta; I assume AMD got a waiver of the NDA because it was
good news they wanted to report.

According to a closed MS newsgroup, the public trial version will be updated
Real Soon Now to catch up with the beta. That's good news, as the original
release was in Sep 2003 and there've been no updates so far; the most
popular topic on the newsgroup is how to uninstall XP64 because people are
frustrated with the lack of progress in performance and driver support.

Yea, I read this group and one thing that scared me is that you can not
even install this version on SATA drive.

Regards,
Evgenij


--

__________________________________________________
*science&fiction*free programs*fine art*phylosophy:
http://sudy_zhenja.tripod.com
----------remove hate_spam to answer--------------
 
Stefan Monnier said:
But such a representation of pointers is unnecessarily costly for the usual
case of a pointer to a single object. Some C compilers use such tricks to
get a "safe" implementation, but the runtime cost is very significant
(we're talking more than a factor 2 slowdown).

Pointers which are run-time distinguished from integers, and which
contain bounds information are essential to computers and languages
that are secure. We've known this for decades, and the ideas have
been tested thoroughly in implementations such as the lisp machine.

A more recent idea is the inclusion of small floating point length
descriptors within the pointer itself. The idea is that every pointer
contain, in addition to a full-address location in memory, a sixteen
bit or so origin and length descriptor. For example, such a
descriptor could consist of three fields, a block-size field (exponent
of the length), a count of the number of blocks in the object
(mantissa of the length) and a finger field (mechanism for identifying
the origin of the object in units of blocks).

With such a scheme, we can represent block-size aligned data
structures with high efficiency of memory use (1.5% wasted memory
space), guarantee that no references take place outside the object,
allow pointer arithmetic within the object, and do fine grained
allocation at the word level for objects less than 32 words.

Here's what an object identifier and pointer to a sub-word of the
object look like:


6 5 5 42-64 bits
******|*****|*****|******** ---- *******************
E B F pointer within object


Let C = the pointer field zeroing the bottom E+1 bits


This tells you that the object is of size B x 2**E words
That the object is word aligned on memory boundaries of size 2**E
That the beginning of the object is at location C - F x 2**E
That the end of the object is at location C - (B - F) x 2**E


In my opinion, schemes such as this combine the best of flat address
space and object bounds checking.
 
Stuff like sparse addressing would be "hard" without paging or
something akin to it. In most other respects I think a friendly
segmentation scheme would be adequate. :)

Can you give one SOLID reason why sparse addressing should be provided
by hardware and privileged code? Note that, as usual, I am not talking
about implementing the current methods in applications and libraries,
but about providing equivalent functionality and efficiency.


Regards,
Nick Maclaren.
 
If your pointers are compound things containing base and index,
Pointers which are run-time distinguished from integers, and which
contain bounds information are essential to computers and languages
that are secure.

Are they? Java's integers are difficult to distinguish from pointers at
run-time, unless you have sufficient context information. Same thing with
Modula-3 and many/most other statically type safe languages.
We've known this for decades, and the ideas have been tested thoroughly in
implementations such as the lisp machine.

Sure there's lots of funny ways to do runtime checks, but when compiling C,
it's very difficult to make them cost less than a factor of 2 slowdown,
because you're running against a "no check, no runtime info" base
performance and because there are many different situations you have to deal
with, such as "this int pointer migth be pointing at the 3rd element of an
array which is itself the second field of a struct which is itself the 25th
element of an array". Given such constraints, it's difficult to pack all
the necessary runtime data into the usual space taken by a pointer, so you
typically end up at least doubling the size of a pointer, using up that much
more registers and memory (and instructions to move them around), ...

With a bit of help from the programmer, it's usually easier (tho by no
means trivial), see the Cyclone project for an example.


Stefan
 
Here, tho, I have to disagree: I can't think of any type-safe language where
the compiler would be able to make good use of segments. You might be able
to keep most objects in a flat space and then map every array to a segment
(thus benefitting from the segment's bounds check), but it's probably going
to be too much trouble considering the risk that it will suffer pathological
degradation on programs that use a large number of small arrays (because the
hardware would have a hard time managing efficiently thousands of actively
used segments).
After using Pascal & Algol on a Unisys NX (nee. A series) machine, I really
have to disagree. Both make "segments" for every array dimension, and
record (structure) that is allocated. For the most part, all arrays and
structures are NOT allocated on the return stack. The OS and the languages
really don't have a problem with this. Array elements are allocated usually
only when they are "touched", which addresses some of the sparse array
questions.
In theory, yes. In practice, it's very difficult for the compiler to
figure out how to compile the thing (I gather that one of the difficulty is
to figure out whether "foo *bar" is a pointer to an object `foo' or
a pointer to an array of `foo's or a pointer to one of the elements of an
array of `foo's).
Yes, for a C compiler, because C (and the programs written in it) assume
you can do differences on pointers, that a pointer is a single "word", that
it can fit into some kind of integer, that the address space is flat, etc,
etc.

Use a language that doesn't let you assume those things (Algol or Pascal),
and a pointer is a pointer.

For instance, if every pointer had to use a segment for the object it
addresses, you wouldn't have the above problem, if it addressed a single
object, the length of the segment would be enough to contain just one
object. Of course, this leads to a profileration of segments, which is a
real short coming of the x86 architecture.

- Tim

NOT speaking for Unisys.
 
Stephen said:
According to a closed MS newsgroup, the public trial version will be updated
Real Soon Now to catch up with the beta. That's good news, as the original
release was in Sep 2003 and there've been no updates so far; the most
popular topic on the newsgroup is how to uninstall XP64 because people are
frustrated with the lack of progress in performance and driver support.


but won't a lot of drivers still be the responsibility of third party
manufacturers? or will all the new 64 bit drivers appearing on places
like planetAMD be part of the new beta...? if not how else can MS make
any significant improvements.... i mean the OS does work quite well but
most of the 3rd party drivers are crap... or is it MS

i was shocked to learn that it still required a floppy drive to install
XP-64.
 
Paul said:
but won't a lot of drivers still be the responsibility of third party
manufacturers? or will all the new 64 bit drivers appearing on places
like planetAMD be part of the new beta...? if not how else can MS make
any significant improvements.... i mean the OS does work quite well but
most of the 3rd party drivers are crap... or is it MS

- argh dam enter key, continuing that unfinished post: basically what
i'd like to know is whether the performance degredation we're seeing in
so many games is due to the OS or drivers.

as for the floppy drive i'm not sure if that's the case for a basic
install, maybe only for some installs where sata drivers are needed.
 
Paul Gunson said:
but won't a lot of drivers still be the responsibility of third party
manufacturers? or will all the new 64 bit drivers appearing on places
like planetAMD be part of the new beta...? if not how else can MS make
any significant improvements.... i mean the OS does work quite well but
most of the 3rd party drivers are crap... or is it MS

Microsoft has a long history of writing drivers for popular hardware on
behalf of the vendors. Back in Sep 2003 when the public trial version was
built, this driver list was extremely limited; presumably Microsoft's goal
was to get people testing the OS itself, particularly WOW64, but not the
drivers themselves.

GPU drivers are still in pretty sad shape, though ATI and nVIDIA have made
great strides recently. Most other major vendors have shipped beta drivers,
and it's safe to assume Microsoft will enhance those, plus write their own
drivers for equipment from less-cooperative or defunct vendors, and run them
all through WHQL before the final release of XP64. IMHO that's the major
holdup in the release process...

Since beta participants are under NDA, it's hard to say what the exact
status of all this is; we'll get a better picture if/when Microsoft releases
a new public trial.
i was shocked to learn that it still required a floppy drive to install
XP-64.

That's only needed if you need additional drivers during install (e.g.
SATA); alternately, users can modify the installation ISO to include
additional drivers, but it's not for the faint of heart...

S
 
Paul Gunson said:
i was shocked to learn that it still required a floppy drive to
install XP-64.

I've been wondering why all new PCs seem to have them the last five
years :-)

-kzm
 
I've been wondering why all new PCs seem to have them the last five
years :-)

Some of the large corps have had err, problems with theft of "important"
info on USB flash drives. They're disabling the functionality down to
keyboard/mouse as necessary.... and CD writers are also often banned from
employee systems.

Rgds, George Macdonald

"Just because they're paranoid doesn't mean you're not psychotic" - Who, me??
 
Stephen said:
That's only needed if you need additional drivers during install (e.g.
SATA); alternately, users can modify the installation ISO to include
additional drivers, but it's not for the faint of heart...

Yes, but a machine with SATA disks is probably a very modern one, and why on
earth do you want a floppy drive on a modern machine? Most Athlon64 boards
come with SATA (and only a few different SATA chipsets actually exist), so
including those SATA drivers into the OS designed to run on Athlon64 is
really mandatory.
 
George Macdonald said:
Some of the large corps have had err, problems with theft of "important"
info on USB flash drives. They're disabling the functionality down to
keyboard/mouse as necessary.... and CD writers are also often banned from
employee systems.

Rgds, George Macdonald

"Just because they're paranoid doesn't mean you're not psychotic" - Who,
me??

I visited a defense contractor to give a presentation a number of years ago
when flash drives were newly available but limited supply and very
expensive. (mine was a gift) As we checked in through security they
required my floppy be removed, it was in my bag but I left it with security.

At the presentation, I booted up my PC and shoved the flash drive in (8MB
maybe...) I store all the presenations/whitepapers/propoganda on the flash
so if someone requests it, I just dump it on their PC right there. Also
helps if my PC dies, I use any available PC .

The director looked at me and said "Holy @#$!"

-brig
 
Brig Campbell said:
At the presentation, I booted up my PC and shoved the flash drive in (8MB
maybe...) I store all the presenations/whitepapers/propoganda on the flash
so if someone requests it, I just dump it on their PC right there. Also
helps if my PC dies, I use any available PC .
The director looked at me and said "Holy @#$!"

I guess they understand the threat now; perhaps that is why most
flash drives come with rounded edges and a cord attached.

Casper
 
Some of the large corps have had err, problems with theft of "important"
info on USB flash drives. They're disabling the functionality down to
keyboard/mouse as necessary.... and CD writers are also often banned from
employee systems.

Really?! I hadn't heard that one. I just bought a flash drive for that
very reason (to take work home). It's a slick little Gizmo. In fact I
put a floppy in the new system just out of habit. I can't remember the
last time I used a floppy. If the data I need will fit on a floppy,
I just email it to myself.

Which reminds me; I have to get it working under Linux.
 
Really?! I hadn't heard that one.

Yup, one of the large JP auto mfrs found one of their latest, still secret,
car designs -- 3D-CAD stuff, the whole ball-a-wax -- published in a
magazine. Henceforth all USB flash connectors are to be "sealed off".
There was also the big scandal a few months ago, where Ferrari F1 designs
turned up at Toyota F1 along with a "new" ex-Ferrari employee - CD-R in
that case I believe.

I figure there's also gotta be a *big* potential problem with things like
medical record databases, govt. records, insurance records, etc. too and
that affects all of us.
I just bought a flash drive for that
very reason (to take work home). It's a slick little Gizmo. In fact I
put a floppy in the new system just out of habit. I can't remember the
last time I used a floppy. If the data I need will fit on a floppy,
I just email it to myself.

Yeah well e-mail attachments are another thing - easy to limit size there
but something substantial *could* still get through I suppose. The USB
drives are a great convenience but the scope for abuse is huge - a
disgruntled employee could do a lot of damage.

Rgds, George Macdonald

"Just because they're paranoid doesn't mean you're not psychotic" - Who, me??
 
George Macdonald said:
Some of the large corps have had err, problems with theft of "important"
info on USB flash drives. They're disabling the functionality down to
keyboard/mouse as necessary.... and CD writers are also often banned from
employee systems.

Floppy drives have been banned (or at least disabled) at many large corps
for years; USB flash drives, CD writers, etc. are headed towards the same
fate.

Amusingly, the same corporations often have no problem with email
attachments.

S
 
Back
Top