No - I don't. Typically, if I had something like that I would do this though:

private static UIImage foo;
public static UIImage Foo
{
    get
    {
        If (foo == null)
            foo = UIImage.FromBundle("images/foo.png");

        return foo;
    }
}

I've looked through Main and AppDelegate etc trying to see if there was 
anything that could cause delays, but can't find anything.

The Objective-C thing I am loading is for the Linea Pro - but that doesn't get 
called until well into the startup process.

-----Original Message-----
From: Nic Wise [mailto:[email protected]] 
Sent: Thursday, May 31, 2012 4:08
To: Dean Cleaver
Cc: Rolf Bjarne Kvinge; [email protected]
Subject: Re: [MonoTouch] Executable size

out of curiosity, do you have a load of static images being loaded? I suspect 
they will get done before the Main loads....

eg:

public static UIImage foo = UIImage.FromBundle("images/foo.png");

might be taking up a bit of time. Clearly whatever it is can be done in 
parallel, because the single CPU core speed of the 4 vrs 4S is not hugely 
different, - just that the 4S has _two_ of them.

Whats the obj-c thing you are loading? maybe it's spinning up threads?
Does the console in xcode organiser show anything?

On Wed, May 30, 2012 at 11:29 PM, Dean Cleaver 
<[email protected]> wrote:
> Shipping the app is a bit tricky - it's made up of 5 projects in a solution. 
> And I am not sure the boss would be too happy about shipping the source code.
>
> Do you have anything less powerful than a New iPad? This is on an iPhone 4 
> which is no slouch, but hardly has the speed of an iPad3. I have to use an 
> iPhone 4 because of the Linea Pro. I can try to do a screen capture of the 
> application output screen, but I experience significant delays between the 
> splash screen showing up and the app executable even being called - 12 
> seconds is the lowest I have ever seen between 
> "KleverLogicFlashValetiPhoneValet[874:1903] MonoTouch: Processing: 'start 
> profiler: no'" and my debug output from the first line of my "Main" procedure.
>
> Any ideas what else could affect the time between those to actions? I am 
> referencing an external Objective-C library - does that make a difference? 
> It's not small - 2.7MB on its own.
>
> Dino
>
> -----Original Message-----
> From: Rolf Bjarne Kvinge [mailto:[email protected]]
> Sent: Wednesday, May 30, 2012 17:15
> To: Dean Cleaver
> Cc: Nic Wise; [email protected]
> Subject: Re: [MonoTouch] Executable size
>
> Hi,
>
> On Thu, May 31, 2012 at 12:01 AM, Dean Cleaver 
> <[email protected]> wrote:
>> Rolf,
>>
>> I don't know for a fact that it won't load, but everything I have seen 
>> recently points to that. For example, in the other issue I posted I sent the 
>> application output. Sometimes that will not even get to my "Main" function 
>> before the iPhone kills the process. I've seen it report only one single 
>> loaded assembly before the iPhone killed it. So it seems to me the issue is 
>> in loading the assemblies quickly.
>>
>> Reducing the number of assemblies has improved it. Am just concerned that if 
>> the assembly gets bigger and takes longer to load, that I'm back in the same 
>> boat.
>
> I just tried adding a reference to every single assembly MonoTouch ships, and 
> then disable linking. The app turned out to be 107MB, and the app started in 
> a couple of seconds on my machine/device (iPad3), so it is not as obvious as 
> it looks at first sight.
>
> Would it be possible to get access to your app so I could try it out?
>
> Rolf
>
>>
>> Dino
>>
>> -----Original Message-----
>> From: Rolf Bjarne Kvinge [mailto:[email protected]]
>> Sent: Wednesday, May 30, 2012 16:54
>> To: Dean Cleaver
>> Cc: Nic Wise; [email protected]
>> Subject: Re: [MonoTouch] Executable size
>>
>> Hi,
>>
>> On Wed, May 30, 2012 at 10:40 PM, Dean Cleaver 
>> <[email protected]> wrote:
>>> Can't use LLVM in debug mode, but not using it in production either - the 
>>> "experimental" moniker scares me a little.
>>
>> It's not experimental anymore. I removed the "experimental" part of the 
>> description some time ago, but I just realized the tooltip still has it.
>>
>>>
>>> This is targeting only ARM7. ARM6+ARM7 in debug creates a 60.4MB executable.
>>>
>>> Release build is 9.6MB for the same configuration. Using LLVM that cuts to 
>>> 8.9MB, but it's really Debug I am worried about as if it gets too much 
>>> bigger, it will fail to load and thus I won't be able to debug it.
>>
>> Do you know for a fact that it will fail to load? (I'm not counting 
>> the other issue you've reported where it fails to startup in time, 
>> since that's a bug we can/should/will fix)
>>
>> I'm pretty sure I've seen apps >100MB (but it might have been the 
>> entire .app directory though)
>>
>> Rolf
>>>
>>> And yes - it's just the Unix file, not the entire app.
>>>
>>> And I'll keep the virtual beer in mind - thanx ;)
>>>
>>> -----Original Message-----
>>> From: Nic Wise [mailto:[email protected]]
>>> Sent: Wednesday, May 30, 2012 15:22
>>> To: Dean Cleaver
>>> Cc: [email protected]
>>> Subject: Re: [MonoTouch] Executable size
>>>
>>> Are you using LLVM?
>>>
>>> Can you make it only target Armv7 (not 6+7) and possibly only thumb?
>>>
>>> How big is a release build? vrs a debug build?
>>>
>>> Is the 30meg the unix exe (ie, inside the .app, there is a file...) or are 
>>> you talking about the .app?
>>>
>>> outside of that, I think you need to buy Sebastian a virtual beer or
>>> 2
>>> :) He being Mr Linker and all...
>>>
>>>
>>>
>>> On Wed, May 30, 2012 at 5:36 PM, Dean Cleaver 
>>> <[email protected]> wrote:
>>>> Hi,
>>>>
>>>>
>>>>
>>>> Just wondered if there were any techniques or methods that are 
>>>> known to bloat executables? I'm concerned that my application is 
>>>> becoming too large to debug, and we're not finished yet. It has 
>>>> about 80 view controllers, plus data sources. Unfortunately they 
>>>> are for the most part 80 distinct view controllers, so I could only 
>>>> trim it to 70 to
>>>> 75 at best. I've made use of inheritance as best I can to reduce 
>>>> repeated blocks of code, but wondered if there were any other paths 
>>>> I could follow to reduce the beast? Currently the Unix Executable 
>>>> file compiled in debug mode is 30MB, and I fear it's only going to 
>>>> get bigger and cause more debugging problems on the physical device (which 
>>>> I need for the Linea Pro sleeve).
>>>>
>>>>
>>>>
>>>> Dino
>>>>
>>>>
>>>> _______________________________________________
>>>> MonoTouch mailing list
>>>> [email protected]
>>>> http://lists.ximian.com/mailman/listinfo/monotouch
>>>>
>>>
>>>
>>>
>>> --
>>> Nic Wise
>>> t.  +44 7788 592 806 | @fastchicken | 
>>> http://www.linkedin.com/in/nicwise
>>> b. http://www.fastchicken.co.nz/
>>>
>>> Earnest: Self-employed? Track your business expenses and income.
>>> http://earnestapp.com
>>> Nearest Bus: find when the next bus is coming to your stop. 
>>> http://goo.gl/Vcz1p mobileAgent (for FreeAgent): get your accounts in your 
>>> pocket.
>>> http://goo.gl/IuBU
>>> Trip Wallet: Keep track of your budget on the go: 
>>> http://goo.gl/ePhKa London Bike App: Find the nearest Boris Bike, and get 
>>> riding!
>>> http://goo.gl/Icp2 _______________________________________________
>>> MonoTouch mailing list
>>> [email protected]
>>> http://lists.ximian.com/mailman/listinfo/monotouch
> _______________________________________________
> MonoTouch mailing list
> [email protected]
> http://lists.ximian.com/mailman/listinfo/monotouch



--
Nic Wise
t.  +44 7788 592 806 | @fastchicken | http://www.linkedin.com/in/nicwise
b. http://www.fastchicken.co.nz/

Earnest: Self-employed? Track your business expenses and income.
http://earnestapp.com
Nearest Bus: find when the next bus is coming to your stop. http://goo.gl/Vcz1p 
mobileAgent (for FreeAgent): get your accounts in your pocket.
http://goo.gl/IuBU
Trip Wallet: Keep track of your budget on the go: http://goo.gl/ePhKa London 
Bike App: Find the nearest Boris Bike, and get riding! http://goo.gl/Icp2
_______________________________________________
MonoTouch mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/monotouch

Reply via email to