Foros: 公開討議 (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,

Responder al #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.) Entrar

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
Responder al #57015

Responder al #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.) Entrar

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,
Responder al #57017

Responder al #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.) Entrar

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.
Responder al #57020

Responder al #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.) Entrar

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,
Responder al #57030

Responder al #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.) Entrar

RE: Allocating large arrays (2011-04-26 09:08 by Anónimo #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
Responder al #57038

Responder al #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.) Entrar

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,
Responder al #57039

Responder al #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.) Entrar

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.
Responder al #57038

Responder al #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.) Entrar

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,
Responder al #57040

Responder al #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.) Entrar