Gier,

I do some experiments on this issue.
It is funny, but it is reproduced only by ubuntu user that logged to console.
It does not reproduce on SuSe at all.

Following sequence is more funny : ))
[EMAIL PROTECTED]> java Test
fail ... on 370
[EMAIL PROTECTED]> su - kna
[EMAIL PROTECTED]> java Test
passed with 4700000
[EMAIL PROTECTED]> su - ali
[EMAIL PROTECTED]> java Test
passed with 4700000

I'll try to solve  the mystery.
It could be a problem with freeing memory from dead threads and with
the linkage.
Attached build fix introduce  -lpthread shared linkage. This allows
specify thread stack size in our VM (1M by default). thread count int
Test increase from 370 to 1000.

Thanks
Artem










On 17 Oct 2006 16:14:58 +0700, Egor Pasko <[EMAIL PROTECTED]> wrote:
On the 0x205 day of Apache Harmony Geir Magnusson, Jr. wrote:
> So, with
> > public class Test implements Runnable {
> >     static int i = 0;
> >     public void run() {
> >         try {
> >             Thread.sleep(1);
> >         } catch (Throwable e) {             e.printStackTrace();
> >         }
> >     }
> >     Test() {
> >         new Thread(this).start();
> >     }
> >     public static void main(String args[]) {
> >         for(;;) {
> >           i++;
> >           if (i % 1000 == 0) {
> >                 System.out.println("Iteration: " + i);
> >           }
> >           new Test();
> >         }
> >     }
> > }
>
> How far do you get? I get to 340...  and then OOM.  Why are threads so
> heavy?

4435000 on SUSE9 with:
object_handles.cpp:270: ObjectHandlesNew* 
oh_add_new_handles(ObjectHandlesNew**): Assertion `n' failed

Jrockit gave no more than 405000. Even more interesting...

--
Egor Pasko, Intel Managed Runtime Division


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Index: build/make/components/vm/vmcore.xml
===================================================================
--- build/make/components/vm/vmcore.xml	(revision 464417)
+++ build/make/components/vm/vmcore.xml	(working copy)
@@ -292,13 +292,6 @@
 
             <select os="lnx">
                 <syslibset type="shared" libs="m,dl,stdc++,z,xml2,pthread,gcc_s,rt" /> 
-                <linkerarg value="--export-dynamic" />
-                <!--linkerarg value="-lz" />
-                <linkerarg value="-lxml2" />
-                <linkerarg value="-lm" />
-                <linkerarg value="-ldl" />
-                <linkerarg value="-lpthread" />
-                <linkerarg value="-lstdc++" /-->
             </select>
         </linker>
     </target>
Index: build/make/components/vm/hythr.xml
===================================================================
--- build/make/components/vm/hythr.xml	(revision 464417)
+++ build/make/components/vm/hythr.xml	(working copy)
@@ -95,11 +95,11 @@
             </select>
 
             <select os="lnx">
-                <syslibset libs="rt" />
+                <syslibset libs="pthread,rt" />
                 <linkerarg value="-Wl,-init" />
                 <linkerarg value="-Wl,hythread_library_init" />
                 <linkerarg value="-Wl,--version-script,${src}/thread/src/hythr.exp" />
-            </select>
+           </select>
 
             <select os="win">
                 <syslibset libs="advapi32,ws2_32" />
Index: build/make/targets/common_vm.xml
===================================================================
--- build/make/targets/common_vm.xml	(revision 464417)
+++ build/make/targets/common_vm.xml	(working copy)
@@ -207,8 +207,8 @@
                 <syslibset libs="advapi32,odbc32,userenv,ws2_32,mswsock" />
             </select>
             <select os="lnx" arch="ia32">
-                <syslibset type="static" libs="z,pthread,xml2" />
-                <syslibset type="shared" libs="m,dl,stdc++,rt" />
+                <syslibset type="static" libs="z,xml2" />
+                <syslibset type="shared" libs="m,dl,stdc++,rt,pthread" />
             </select>
             <select os="lnx" cxx="gcc" arch="ia32">
                 <linkerarg value="-lgcc_s" />
Index: build/make/targets/common_extra.xml
===================================================================
--- build/make/targets/common_extra.xml	(revision 464417)
+++ build/make/targets/common_extra.xml	(working copy)
@@ -46,8 +46,8 @@
                 <syslibset libs="advapi32,odbc32,userenv,ws2_32,mswsock" />
             </select>
             <select os="lnx">
-                <syslibset type="static" libs="z,pthread,xml2" />
-                <syslibset type="shared" libs="m,dl,stdc++" />
+                <syslibset type="static" libs="z,xml2" />
+                <syslibset type="shared" libs="m,dl,stdc++,pthread" />
             </select>
             <select os="lnx" cxx="gcc">
                 <syslibset type="shared" libs="gcc_s" />
---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to