Re: allocation memory in Java

2017-11-20 Thread Wojciech Kudla
I don't think I had any issues with symbol resolution and stack unwinding
with the default fastdebug build (provided that the frame pointers are
preserved).
Can anyone shed some light on what the benefits of
 --with-native-debug-symbols=internal are?

On Mon, 20 Nov 2017, 21:56 John Hening,  wrote:

> With perf. OpenJDK might need to be configured with debug symbols:
>> --with-native-debug-symbols=internal
>>
>
> @Aleksey, when I try to configure openjdk8 with that option I get an error:
>
> configure: error: unrecognized options: --with-native-debug-symbols
>
>
> Exactly, I I downloaded jdk8u and I
>
> ./configure --enable-debug --with-freetype-include=/usr/include/freetype2/
> --with-freetype-lib=/usr/lib/x86_64-linux-gnu/ --with-native-debug-symbols
> =internal
>
> Can you help?
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "mechanical-sympathy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mechanical-sympathy+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: allocation memory in Java

2017-11-20 Thread John Hening

>
> With perf. OpenJDK might need to be configured with debug symbols: 
> --with-native-debug-symbols=internal 
>

@Aleksey, when I try to configure openjdk8 with that option I get an error:

configure: error: unrecognized options: --with-native-debug-symbols


Exactly, I I downloaded jdk8u and I  

./configure --enable-debug --with-freetype-include=/usr/include/freetype2/ 
--with-freetype-lib=/usr/lib/x86_64-linux-gnu/ --with-native-debug-symbols=
internal

Can you help?

 

-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: allocation memory in Java

2017-11-20 Thread Aleksey Shipilev
On 11/18/2017 01:45 PM, John Hening wrote:
> Thanks for your replies :)
> 
> @Aleksey, how to get that?
> 
> |-17.12%0.00%org.openjdk.Allperf-31615.map-0x7faaa3b2d125-16.59%OptoRuntime::new_instance_C
> -11.49%InstanceKlass::allocate_instance 
> 2.33%BlahBlahBlahCollectedHeap::mem_allocate  point to GC 0.35%AllocTracer::send_allocation_outside_tlab_event|
> 
> I mean, how to get a such stacktrace with profiling information? I see 
> perf-31615.map what indicates
> on perf.

With perf. OpenJDK might need to be configured with debug symbols: 
--with-native-debug-symbols=internal

-Aleksey



-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


signature.asc
Description: OpenPGP digital signature


Re: allocation memory in Java

2017-11-18 Thread John Hening
Thanks for your replies :)

@Aleksey, how to get that?

-   17.12% 0.00%  org.openjdk.All  perf-31615.map
   - 0x7faaa3b2d125
  - 16.59% OptoRuntime::new_instance_C
 - 11.49% InstanceKlass::allocate_instance
  2.33% BlahBlahBlahCollectedHeap::mem_allocate  < entry point 
to GC
  0.35% AllocTracer::send_allocation_outside_tlab_event

I mean, how to get a such stacktrace with profiling information? I see 
perf-31615.map what indicates on perf.

-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: allocation memory in Java

2017-11-18 Thread Aleksey Shipilev
On 11/17/2017 11:46 PM, John Hening wrote:
> For my eye, common objects in Java, likeĀ 
> 
> newString();
> 
> is a CHeapObj. I looked at an implementation of new operator in that class 
> and it looks like:

In related news, there is javaClasses.cpp, and therefore Java class library is 
written in C++! /s

> No, I have no idea why it is said: allocation in Java in very fast- it is 
> fater than C++/C

Start from here:
  https://shipilev.net/jvm-anatomy-park/4-tlab-allocation/

Thanks,
-Aleksey



-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


signature.asc
Description: OpenPGP digital signature


allocation memory in Java

2017-11-17 Thread John Hening
I am reading source of HotSpot sourcode src/share/vm/memory/allocation.hpp 
and I see:

// All classes in the virtual machine must be subclassed
> // by one of the following allocation classes:
> //
> // For objects allocated in the resource area (see resourceArea.hpp).
> // - ResourceObj
> //
> // For objects allocated in the C-heap (managed by: free & malloc).
> // - CHeapObj


For my eye, common objects in Java, like 

new String();

is a CHeapObj. I looked at an implementation of new operator in that class 
and it looks like:

void* CHeapObj::operator new(size_t size){
  return (void *) malloc(size);
}



No, I have no idea why it is said: allocation in Java in very fast- it is 
fater than C++/C

-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.