Foren: 公開討議 (Thread #29171)

Allocating large arrays (2011-04-24 07:39 by ukimiku #57015)

Dear SHIRAISH Kazuo,

I would like to allocate a numerical array with 40 000 000 elements (DIM a(40000000)). This fails, as the interpreter says that virtual memory had not been allocated. There is enough pyhsical RAM to hold that many numbers, and neither OPTION ARITHMETIC RATIONAL nor OPTION ARITHMETIC DECIMAL_High have been requested, just normal float numbers. How can I increase the physical memory available to DECIMAL BASIC?

Thank you.
Regards,

Reply to #57015×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-24 10:07 by SHIRAISHI Kazuo #57017)

The solution is contrary among the decimal mode and the binary mode.
In the decimal mode, it may be resolved by increasing VirtualMemory in BASIC.INI.
But in the binary mode, it may be resolved by decreasing it.
These are done automatically when BASIC.exe finishes and re-starts to a certain extent.
See also for BASIC.INI
http://hp.vector.co.jp/authors/VA008683/english/html/basi1hwl.htm
Reply to #57015

Reply to #57017×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-24 16:14 by ukimiku #57020)

Thank you. Problem: there is no BASIC.ini file in my installation folder of DECIMAL BASIC. I have made visible all invisible files, still there is no BASIC.INI. Could you post/paste/e-mail such a file, please? I understand your suggestions and would like to try them out.

Thank you.
Regards,
Reply to #57017

Reply to #57020×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-25 08:20 by SHIRAISHI Kazuo #57030)

BASIC.ini is made when BASIC.EXE finishes.
On Linux or MAC, it may be found in your home folder, and it is an invisible file named .basic.ini.
On Windows, BASIC.ini is made in the folder where BASIC.EXE exists.
Reply to #57020

Reply to #57030×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-26 03:28 by ukimiku #57038)

After BASIC.EXE finishes, I have the following files in its folder:
BASIC (compiled html help file)
BASIC (.exe, the interpreter)
BASIC (.KW1)
BASIC (.KW2)
BASIC (.KWF)
BASIC (.KWS)
There are no more BASIC.* files, only your demo folders (COMM, Complex, FRACTAL...). I have made visible any file, but still there is no .INI file. Could you please post a typical .INI file here in the forum? I could paste that into my text editor and save it as BASIC.INI (if that would work).

Thank you.

Regards,
Reply to #57030

Reply to #57038×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-26 09:08 by Anonym #57039)

[TextWindow2]
FontName=Courier New
FontSize=11
CharSet=0
[TextWindow1]
FontName=Courier New
FontSize=11
CharSet=0
[Trace]
FontName=Courier New
FontSize=11
CharSet=0
[PrintBMP]
EnLarge=0
[OptionAC]
0=1
1=1
2=1
3=1
4=1
5=1
6=0
7=0
8=0
9=0
[Debug]
FontName=Courier New
FontSize=10
CharSet=0
[Graphics]
AxisColor=15
BMPSize=6
GeometricPenOnly=0
ForwardPlot=0
AntiVistaNonAeroDisorder=0
TextProblemCoordinate=0
TextPhysicalCoordinate=0
[Text]
FontName=Courier New
FontSize=11
CharSet=0
InitialMargin=1600
[Frame]
Left=0
Top=0
Width=573
Height=513
FontName=Courier New
FontSize=11
CharSet=0
Flat=1
ToolBar=1
JISFormat=0
CharacterByte=1
JISSetWindow=0
JISDim=0
ForceFunctionDeclare=0
JISDef=0
ForNextBroadOwn=0
ResultVarStatic=0
AutoIndent=1
OptionExplicit=0
Shift_F5=LET
Shift_F6=PRINT
Shift_F7=OPTION ANGLE DEGREES
Shift_F8=
[AutoFormat]
kw=1
Reply to #57038

Reply to #57039×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-27 00:38 by ukimiku #57056)

Thank you, Anonymous, for posting a BASIC.INI file. It seems to work now.
Regards,
Reply to #57039

Reply to #57056×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-26 09:16 by SHIRAISHI Kazuo #57040)

BASIC.INI is visible on Windows.
BASIC.ECE suppresses the error message when BASIC.INI cannot be written or re-written.
Reply to #57038

Reply to #57040×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden

RE: Allocating large arrays (2011-04-27 00:42 by ukimiku #57057)

Thank you, I understand. Your last message made me see the problem (when BASIC.EXE cannot write BASIC.INI, any error messages are being suppressed). When I run BASIC.EXE as an administrator (under Windows Vista), then and only then, BASIC.INI gets created.

Regards,
Reply to #57040

Reply to #57057×

You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Anmelden