Re: [Mono-dev] ObjectPool

2012-07-25 Thread Konrad Kruczyński
On Wed, 2012-07-25 at 07:17 -0400, Greg Young wrote:
 Yuriy will reply with more details but by just making Take return
 Creator() and nooping release many of our issues have gone away
 (including visible issues with concurrentstack). From what I have seen
 we also saw massive performance gains.
 

Just for the curiosity: are you using SGEN? I've always thought that
ObjectPool in ConcurrentStack was used to reduce the pressure on the
garbage collector (Boehm, specifically). It is probably much less
important with generational collector like SGEN.

--
Regards,
 Konrad


___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] ObjectPool

2012-07-25 Thread Konrad Kruczyński
On Wed, 2012-07-25 at 07:28 -0400, Greg Young wrote:
 Yes we are using sgen.
 
 Good to know the history there as well.
 
 Cheers,
 
 Greg
 

Well, *actually* this is my guess ;)

--
Regards, 
 Konrad

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] ConcurrentStack with value type in 2.10

2012-07-23 Thread Konrad Kruczyński
On Mon, 2012-07-23 at 13:45 +0100, Alan wrote:
I cannot reproduce the problem either. What exact version of 2.10 did
 you test against? It's possible the bug has already been fixed in a
 newer release of the 2.10 series.
 
 
I could reproduce it on 32-bit machine, only with sgen.

--
Regards,
 Konrad

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Organize usings statement in MonoDevelop 3.02

2012-06-06 Thread Konrad Kruczyński
On Tue, 2012-05-29 at 02:18 -0700, siquylee wrote:
 I'm using MonoDevelop 3.02 and I don't find Organize usings statement from
 context menu when the cursor is in 'using' sections. Could you please tell
 me where I could enable this statement?
 

Try Edit - Preferences - Other - Source Analysis - Enable Source
Analysis. Then you should notice yellow bulb when cursor is located in
unneeded usings. You can click (or press Alt+Enter) and remove unneeded
ones.

--
Regards,
 Konrad

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


[Mono-dev] Confusion with throw; and throw e

2012-04-06 Thread Konrad Kruczyński
Hello all,
consider this simple C# program:

using System;

namespace ETest
{
class MainClass
{
public static void Main(string[] args)
{
try
{
Fun();
}
catch(Exception e)
{
throw;
}
}

public static void Fun()
{
throw new Exception(Test);
}
}
}


Here's the stack trace:
System.Exception: Test
  at ETest.MainClass.Fun () [0x0] in Main.cs:21
  at ETest.MainClass.Main (System.String[] args) [0x0] in Main.cs:11

And another simple program:

using System;

namespace ETest
{
class MainClass
{
public static void Main(string[] args)
{
try
{
Fun();
}
catch(Exception e)
{
throw e;
}
}

public static void Fun()
{
throw new Exception(Test);
}
}
}


and the stack trace is exactly the same. Shouldn't the second program's
exception originate from the Main.cs:15, i.e. throw e line? The
generated IL looks good.

--
Regards,
 Konrad

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Confusion with throw; and throw e

2012-04-06 Thread Konrad Kruczyński
Here's another example:

using System;
using System.Runtime.CompilerServices;

namespace ETest
{
class MainClass
{
public static void Main(string[] args)
{
try
{
Fun();
}
catch(Exception e)
{
Console.WriteLine(e.StackTrace);
}
}

public static void Fun()
{
try
{
Fun2();
}
catch(Exception e)
{
throw;
}
}

[MethodImpl(MethodImplOptions.NoInlining)]
public static void Fun2()
{
throw new Exception(Test);
}
}
}

Stack trace is the same if throw is changed to throw e. Is this a known
bug? I've found a bug considering throw; not preserving the stack
trace, but this one is opposite - throw e does not reset it ;)

--
Regards,
 Konrad

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Google Summer of Code project ideas

2012-04-05 Thread Konrad Kruczyński
Hello again,

On Thu, 2012-04-05 at 10:06 +0700, Alexander Mezin wrote:
 Yeah, I agree on the general term that it could and should be easier
  to use, just thought maybe you did not discovered it yet (frankly,
  because of the hidden nature of this feature not so many people are
  aware of it). Personally the ReSharper approach is my favourite,
  however yours is interesting too.
 I prefer ReSharper's approach too, but I think implementing it will
 require much more work, I'm not sure that I'll finish such project.
 
  If you did not encounter it yet, you should definitely look into new
  code analysis API, based on NRefactory. It is currently developed on
  the newresolver branch. Look at the sample context action here:
 
http://mikemdblog.blogspot.com/2012/03/how-to-write-context-action-using.html
 It seems that I'll have time to look into it after proposals deadline.
 And the deadline is tomorrow, I think I must start writing proposal.
 Could you be a mentor for this project?

Frankly, I am not very familiar with this API, but if no other person
wants to be a mentor, I could. Therefore I'm redirecting this to mailing
list too. Can anyone tell me should I contact/fill anything at this
point?

--
Regards,
 Konrad

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


[Mono-dev] Count leading zeros (or find first one) in Mono.SIMD

2012-02-28 Thread Konrad Kruczyński
Hi,
would it be possible to have implemented functionality like count
leading zeros in Mono.SIMD? Instructions like these are available on
most architectures. Newer SSE instructions would be welcomed too.

--
Regards,
 Konrad

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Count leading zeros (or find first one) in Mono.SIMD

2012-02-28 Thread Konrad Kruczyński
On Tue, 2012-02-28 at 11:49 -0300, Rodrigo Kumpera wrote:
 Mono.SIMD needs update to the latest versions of SSE. Right now we're
 on SSSE.
 The problem is the lack of engineering bandwidth, I would love to have
 the 4.X stuff.


I guess I could do some work on it. The questions are:
a) whether current API is to be extended or there are some reasons to
rebuild it fundamentally? IMO it looks fine, just new (wider) structures
and methods need to be added;
b) question above applied to the underlying JIT machinery;
c) is there any documentation about it or should I just rather look at
the source code?

--
Regards,
 Konrad


___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] Count leading zeros (or find first one) in Mono.SIMD

2012-02-28 Thread Konrad Kruczyński

 Are you talking about AVX? AVX is a very tricky matter and I don't
 have an answer for it upfront,
 but a safe guess is that it will take quite some work and API changes.
 This is for using
 the wider 256bits registers. Using AVX with 128bits register is fine.

Yes, I thought about AVX too, but in that case it may be reserved for
future.

 For adding missing instructions, it's just a matter of adding them.
 Pretty simple.
  
 b) question above applied to the underlying JIT machinery;
 
 
 Same as above.
  
  c) is there any documentation about it or should I just
 rather look at
 the source code?
 
 
 
 Just look at the source code, those are some entry level changes if
 you fancy doing so.
 

Thanks, I'll report if something emerges.

--
Konrad


___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] LLVM with current Mono

2011-10-20 Thread Konrad Kruczyński
Hi Zoltan,

2011/10/20 Zoltan Varga var...@gmail.com:
 Hi,
   You should use the branch in the LLVM repo corresponding to your mono
 version,
 i.e. mono-2-10.
                 Zoltan


Generally it was what I did. Specifically:
LLVM from mono-2-10 branch, last commit ab6947203a665efa0d7676f19cabf2fa70e3af60
configured with:
./configure --enable-optimized --enable-targets=x86 x86_64 --prefix=/usr/
Mono 2.10.5 tarball from mono site. Configured with:
./configure --prefix=/usr/ --enable-llvm=yes
LLVM compilation went fine, hovewer Mono's ended with error attached
in previous message.

--
Regards,
 Konrad
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list