On 32-bit, 9!:20 returns 2^30 when set above that number with 9!:21 and the same input number when set lower.
So it's <./y,2^30 On Nov 17, 2008, at 17:41, Roger Hui <[EMAIL PROTECTED]> wrote: What is the result of 9!:20 '' ? ----- Original Message ----- From: Oleg Kobchenko <[EMAIL PROTECTED]> Date: Monday, November 17, 2008 13:32 Subject: Re: [Jgeneral] Mac 64 bit revisited To: General forum <[email protected]> Yes, this is really weird. It is not possible to allocate more than 1Gb chunk of memory. Running Ubuntu-8 64-bit in VMWare with 1.5Gb RAM, I can allocate even smaller array than on 32-bit Windows, with 1.5 Gb RAM. On Ubuntu-8 64-bit: A=: i.2^26 NB. 0.5 Gb OK A=: i.2^27 NB. > 1 Gb Error |out of memory | A=: i.2^28 It is possible to allocate one more such array: B=: i.2^26 To a total of 7!:0'' 2,148,241,024 then it given out of memory On Windows XP 32-bit: A=: i.2^27 NB. 0.5 Gb OK A=: i.2^28 NB. > 1 Gb Error |limit error | A=: i.2^28 (The memory limit is of 2^30 is maximum possible on 32-bit.) <.2^26 67,108,864 8*<.2^26 NB. 0.5 Gb worth of 64-bit ints 536,870,912 <.2^27 134,217,728 4*<.2^27 NB. 0.5 Gb worth of 32-bit ints 536,870,912 <.2^28 268,435,456 4*<.2^28 NB. 1 Gb worth of 32-bit ints 1,073,741,824 From: Matthew Brand <[EMAIL PROTECTED]> I don't think I understand all this 64-bit stuff at all now. I am using J64 for Linux on 64 bit Ubuntu on VMWare fusion on Leopard> on a 2GB Mac Book Pro. I thought that by using J64 I would be able to work with arrays of much larger size because the Virtual Address Space would be larger. But I get this: #i.2^24 16777216 #i.2^30 |out of memory | # i.2^30 When I try to use mapped files... require 'jmf files dir' NB. This works size =. 65536 bigfn =. jpath '~temp\big.jmf' createjmf_jmf_ bigfn;(size) map_jmf_ 'bigvar';bigfn bigfun =: i.size unmap_jmf_ 'bigvar' NB. This does not work, but I cannot see why since 65536=2^16 size =. 2^16 bigfn =. jpath '~temp\big.jmf' createjmf_jmf_ bigfn;(size) map_jmf_ 'bigvar';bigfn bigfun =: i.size unmap_jmf_ 'bigvar' NB. When I try to make a really big mapped file, I get an error. but I thought the VAS on J64 was 2^64? NB. This only tries to make a 2GB mapped file (only 2^32) but does not work. size =. 2147483648 bigfn =. jpath '~temp\big.jmf' createjmf_jmf_ bigfn;(size) map_jmf_ 'bigvar';bigfn bigfun =: i.size unmap_jmf_ 'bigvar' NB. the error is: map_jmf_ 'bigvar';bigfn |bad jmf header: assert | 'bad jmf header' assert 0[free fh,mh,fad> Have I just completely missed the point of 64-bit VAS? Should I be able to create size 2^32 byte mapped files using J64? When a command results in "out of memory", does that mean it is out of RAM or out of VAS? My edit->configure->parameters->memory limit is set to 2^62. Do I need to set some other parameters in Ubuntu to allow J to use more VAS? Thanks, Matthew. 2008/11/15 Matthew Brand : Thanks for the help guys. I think the problem is that VirtualBox does not support 64 bit guests on the Mac yet. Let's hope they sort it out soon? I have installed a trial copy of VMWare fusion and have managed to get J64 working on ubuntu. Hooray! :-). Issues I ran into, in case anyone else tries it this way: 1) The macBook Pro keyboard is not properly recognised, so I did the things advised on this page http://ubuntuforums.org/showthread.php?t=959249 . I installed xkbset: sudo apt-get install xkbset and appended the following to .bashrc: xmodmap -e "keycode 94 = grave asciitilde" xmodmap -e "keycode 133 = ISO_Level3_Shift" xmodmap -e "keycode 134 = Multi_key" xmodmap -e "keycode 108 = Pointer_Button3" xkbset m 2) java64 had to be created: sudo ln /usr/bin/java /usr/bin/java64 64-bit jconsole and jwd work for me now start for me now. If I don't run into any problems then I will buy a copy of VMWare fusion when the trial runs out. It is pretty slick and only costs ~£50. Cheers, Matthew. 2008/11/15 bill lam : On Fri, 14 Nov 2008, Matthew Brand wrote: I have managed to get Damn Small Linux (DSL) working, but it complains that the Jconsole binary cannot be executed. I tried to install Java on it, but gave up after an hour. Then I installed Arch Linux 64, but could not get it to connect to the internet. Ubuntu complains that the kernel is for x86 rather than i686 so that does not work, I cannot find an Ubuntu which has got the i686 kernel. virtualbox only started to support 64-bit guest recently. My experience is that it works but not very well. DSL uses a rather outdated kernel 2.24 iirc. Arch Linux is meant for hackers, its installation stops after setting up enough to allow to you login a tty console. You have to manually set up various conf files yourself. I guess that ubuntu said it needs a "x86_64" which means a 64- bit cpu rather than "i686" (32-bit). So did you actually install a 64-bit version of virtualbox on a 64-bit os running on a 64-bit cpu? What is involved in making a 64 bit J64 bit binary for the Mac anyway? Is it possible to just put the source code onto a 64 bit mac and press compile/build to make a dmg file and upload it to the download page for J? Might be Eric did not get a macbook with 64-bit os to play with, or you might contact [EMAIL PROTECTED] as mentioned in the download> >> page. ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
