Re: Release D 2.069.0
On Tue, 08 Dec 2015 22:07:15 +, deadalnix wrote: > That's fucking ridiculous. > > I'm sorry, but strong word are warranted on that one. Memory consumption > have been an issue for a while now. Never freeing and assuming > everything will be already to win few ms out of a build is the most > ridiculous choice dmd has done. > > Especially on a 32bits build. > > Will this problem be taken seriously at some point ? At the time of the C++ to D cutover, DMD did some GC-unsafe things. In the interests of expediency, since the compiler isn't a long-running process, they chose to disable the GC in the interim. While at least some of these GC-unsafe behaviors have been excised, there is lingering concern that some might remain, so nobody has re-enabled the GC. This has been somewhat on the backburner; Windows has typically been of secondary concern to D devs, and Linux has 64-bit builds, so address space exhaustion hasn't been as problematic there. Anyway, this is something that's intended to be fixed, and regular 64-bit Windows builds are something that should happen. It just requires the dev team to have better access to Windows.
Re: Release D 2.069.0
On Tuesday, 8 December 2015 at 13:14:58 UTC, Márcio Martins wrote: On Tuesday, 8 December 2015 at 08:39:26 UTC, Jean-Yves Vion-Dury wrote: On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins wrote: On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves Vion-Dury wrote: On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: [...] FYI, I just installed the 2.069 version, and now I'm unable to compile some modules, getting the same "Error: out of memory". I isolated a tiny one raising the issue, and its all about a moderately complex ctRegex expression (see below) that seems to brake the compiler. Other modules also raise the problem, but they are bigger in term of code lines. [...] Windows? Yes indeed, Windows... is it a problem (the previous version was fine with my environment)? You will need to add the add the LARGEADDRESSAWARE flag to your executable manually. It is supposed to be done automatically, but it is not working currently, so you will have to do it manually... It indeed stopped working since 2.069.0. Unfortunately, it is a royal pain in the anus, because you need to download the WDK. To save you some pain, if you have Windows 10, it's WDK doesn't install property, so you best install WDK 8.1 which works smooth. Perhaps there are some other tools that do it, but I am always reluctant to download these sort of stuff from untrusted sources. That's fucking ridiculous. I'm sorry, but strong word are warranted on that one. Memory consumption have been an issue for a while now. Never freeing and assuming everything will be already to win few ms out of a build is the most ridiculous choice dmd has done. Especially on a 32bits build. Will this problem be taken seriously at some point ?
Re: Release D 2.069.0
On Tuesday, 8 December 2015 at 08:39:26 UTC, Jean-Yves Vion-Dury wrote: On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins wrote: On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves Vion-Dury wrote: On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: [...] FYI, I just installed the 2.069 version, and now I'm unable to compile some modules, getting the same "Error: out of memory". I isolated a tiny one raising the issue, and its all about a moderately complex ctRegex expression (see below) that seems to brake the compiler. Other modules also raise the problem, but they are bigger in term of code lines. [...] Windows? Yes indeed, Windows... is it a problem (the previous version was fine with my environment)? You will need to add the add the LARGEADDRESSAWARE flag to your executable manually. It is supposed to be done automatically, but it is not working currently, so you will have to do it manually... It indeed stopped working since 2.069.0. Unfortunately, it is a royal pain in the anus, because you need to download the WDK. To save you some pain, if you have Windows 10, it's WDK doesn't install property, so you best install WDK 8.1 which works smooth. Perhaps there are some other tools that do it, but I am always reluctant to download these sort of stuff from untrusted sources.
Re: Release D 2.069.0
On Tuesday, 8 December 2015 at 08:39:26 UTC, Jean-Yves Vion-Dury wrote: On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins wrote: On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves Vion-Dury wrote: On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: [...] FYI, I just installed the 2.069 version, and now I'm unable to compile some modules, getting the same "Error: out of memory". I isolated a tiny one raising the issue, and its all about a moderately complex ctRegex expression (see below) that seems to brake the compiler. Other modules also raise the problem, but they are bigger in term of code lines. [...] Windows? Yes indeed, Windows... is it a problem (the previous version was fine with my environment)? I guess the issue is that the Windows DMD binary is 32-bit and supports addressing only 2GB (or 4GB if it's Large Address Space aware), whereas on other OSs it's 64-bit by default and doesn't have this limitation. Maybe if you need to keep using Windows your best option is to build a 64-bit DMD yourself. I think the easiest way to do this on Windows is to use Digger: https://github.com/cybershadow/Digger
Re: Release D 2.069.0
On Monday, 7 December 2015 at 17:32:05 UTC, Márcio Martins wrote: On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves Vion-Dury wrote: On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: [...] FYI, I just installed the 2.069 version, and now I'm unable to compile some modules, getting the same "Error: out of memory". I isolated a tiny one raising the issue, and its all about a moderately complex ctRegex expression (see below) that seems to brake the compiler. Other modules also raise the problem, but they are bigger in term of code lines. [...] Windows? Yes indeed, Windows... is it a problem (the previous version was fine with my environment)?
Re: Release D 2.069.0
On Monday, 7 December 2015 at 17:06:48 UTC, Jean-Yves Vion-Dury wrote: On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: [...] FYI, I just installed the 2.069 version, and now I'm unable to compile some modules, getting the same "Error: out of memory". I isolated a tiny one raising the issue, and its all about a moderately complex ctRegex expression (see below) that seems to brake the compiler. Other modules also raise the problem, but they are bigger in term of code lines. [...] Windows?
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Seems like memory usage went up by a significant amount, as I can no longer compile our project on my Windows machine. DMD 2.068.2 uses up to 1100MB of memory during our build and succeeds DMD 2.069 used up to 1600MB of memory before crashing with "Error: out of memory" Are there any plans to release a dmd64.exe? FYI, I just installed the 2.069 version, and now I'm unable to compile some modules, getting the same "Error: out of memory". I isolated a tiny one raising the issue, and its all about a moderately complex ctRegex expression (see below) that seems to brake the compiler. Other modules also raise the problem, but they are bigger in term of code lines. So, at a first glance it looks like a deeper problem that just a "higher memory consumption" issue, to me. I'm a bit frustrated, this was working so well so far... auto r=ctRegex!( `\s*(?:` ~ `(?P#.*)|` ~ `(?:@prefix\s+(?P\pL+):\s+<(?P[^<>\s]+)>\s*\.\s*)|` ~ `(?:(_|\pL+):((?:\pL|[\.\-_0-9])*(?:\pL|\d))\s+(\pL+):((?:\pL|[\.\-_0-9])*(?:\pL|\d))\s+` ~ `(?:(?:(_|\pL+):((?:\pL|[\.\-_0-9])*(?:\pL|\d)))|` ~ `(?:(?:(?:"{3}(?P.*)"{3})|(?:"(?P.*)"))` ~ `(?:` ~ `(?:@(?P[A-Za-z]+(?:\-[A-Za-z0-9]+)*))|` ~ `(?:\^\^(?P\pL+):(?P\w+))` ~ `)?` ~ `)` ~ `)\s*` ~ `\.\s*)` ~`)` ); Thank you for any help beyond splitting down the regex above (any magic memory-oriented option somewhere?) ... Jean-Yves PS I would like to take the opportunity to thank all contributors for their great work on D...
Re: Release D 2.069.0
On Thursday, 5 November 2015 at 01:08:42 UTC, Martin Nowak wrote: On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky wrote: If host machine is x64 bit windows try setting large address aware bit on the executable (there are tools to do that IRC), would allow it to eat up to ~4 gigs. We're already doing that since quite a while. https://github.com/D-Programming-Language/dmd/commit/172b55d22bd4a144d889c3fa8d9279d8e0a0ce1c Martin, it seems this is not working. I just had to use editbin manually on my laptop, again.
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin I'd like to put dlang people attention this: http://forum.dlang.org/post/bxmpvrttbhfuddsym...@forum.dlang.org It looks like there's been a problem when you compiled phobos because the new allocators miss !
Re: Release D 2.069.0
On Monday, 9 November 2015 at 21:38:13 UTC, Martin Nowak wrote: On 11/09/2015 07:08 PM, Dicebot wrote: More common practice is to declare such dependencies as optional though. I made a ticket https://issues.dlang.org/show_bug.cgi?id=15308. Simply changing https://github.com/D-Programming-Language/installer/blob/41fb25ce5e5ff2c14728f490ee4579ac49bb989a/linux/dmd_rpm.sh#L266 doesn't work b/c the rpmtool from debian used to build the rpm packages doesn't support Recommends. Sorry, I don't know a single thing about RPM world thus can't really help meaningfully :(
Re: Release D 2.069.0
On 11/09/2015 07:08 PM, Dicebot wrote: > More common practice is to declare such dependencies as optional though. I made a ticket https://issues.dlang.org/show_bug.cgi?id=15308. Simply changing https://github.com/D-Programming-Language/installer/blob/41fb25ce5e5ff2c14728f490ee4579ac49bb989a/linux/dmd_rpm.sh#L266 doesn't work b/c the rpmtool from debian used to build the rpm packages doesn't support Recommends.
Re: Release D 2.069.0
On Monday, 9 November 2015 at 12:58:39 UTC, Dragos Carp wrote: On Monday, 9 November 2015 at 12:28:09 UTC, FreeSlave wrote: I tried to install rpm-package on Fedora 20 with rpm -i, but it gives me error: Failed dependencies: glibc-devel(x86-32) is needed by dmd-2.069.0-0.x86_64 libcurl(x86-32) is needed by dmd-2.069.0-0.x86_64 Why do package depends on 32-bit libraries? Was it always like that? I never installed dmd on Fedora before. Yes, it was always like that. To be able to generate 32-bit binaries, and dmd-64 can do that, these 32-bit packages are required. More common practice is to declare such dependencies as optional though.
Re: Release D 2.069.0
On Monday, 9 November 2015 at 10:39:21 UTC, Thomas Brix Larsen wrote: Opt-in stats from Arch: https://www.archlinux.de/?page=PackageStatistics go 19.45% rust5.92% gcc-go 5.61% dmd 2.56% ldc 1.72% gdc 1.60% This matches my personal understanding of current "market" share for those.
Re: Release D 2.069.0
On Monday, 9 November 2015 at 12:28:09 UTC, FreeSlave wrote: I tried to install rpm-package on Fedora 20 with rpm -i, but it gives me error: Failed dependencies: glibc-devel(x86-32) is needed by dmd-2.069.0-0.x86_64 libcurl(x86-32) is needed by dmd-2.069.0-0.x86_64 Why do package depends on 32-bit libraries? Was it always like that? I never installed dmd on Fedora before. Yes, it was always like that. To be able to generate 32-bit binaries, and dmd-64 can do that, these 32-bit packages are required.
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin I tried to install rpm-package on Fedora 20 with rpm -i, but it gives me error: Failed dependencies: glibc-devel(x86-32) is needed by dmd-2.069.0-0.x86_64 libcurl(x86-32) is needed by dmd-2.069.0-0.x86_64 Why do package depends on 32-bit libraries? Was it always like that? I never installed dmd on Fedora before.
Re: Release D 2.069.0
On Monday, 9 November 2015 at 09:19:11 UTC, Bastiaan Veelo wrote: Yes, use asModule() for that [1]. Not only does it enable using large grammars, it also saves compilation time for builds after the grammar has stabilised. Thanks. And should the grammar still be too large, it is good to know that Pegged is good at composing a parser from different sub-grammars [2]. So the difficulty is only in finding natural boundaries at which the grammar can be split, making it work should be easy. I knew about composition. I just wanted to keep the same names as per the original spec, instead of nesting.
Re: Release D 2.069.0
On Monday, 9 November 2015 at 03:15:29 UTC, rsw0x wrote: On Monday, 9 November 2015 at 02:15:17 UTC, Andrei Alexandrescu wrote: On 11/8/15 2:58 PM, rsw0x wrote: Interestingly, GDC seems *very* popular - it has a 4:1 install rate of gccgo and only trailing slightly behind the golang-go package(reference compiler?) on Ubuntu's popcon. Link? -- Andrei debian: https://qa.debian.org/popcon-graph.php?packages=gdc%2Cgccgo%2Cgolang&show_installed=on&want_legend=on&want_ticks=on&from_date=&to_date=&hlght_date=&date_fmt=%25Y-%25m&beenhere=1 ubuntu: http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gdc http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=golang-go http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gccgo note that dmd is not redistributed on most linux distros due to licensing issues Opt-in stats from Arch: https://www.archlinux.de/?page=PackageStatistics go 19.45% rust5.92% gcc-go 5.61% dmd 2.56% ldc 1.72% gdc 1.60%
Re: Release D 2.069.0
On Sunday, 8 November 2015 at 14:37:32 UTC, Sebastiaan Koppe wrote: You mean instead of mixin(grammer(`...`)) I write the output of grammer(`...`) to a file and include that into the final build? Yes, use asModule() for that [1]. Not only does it enable using large grammars, it also saves compilation time for builds after the grammar has stabilised. And should the grammar still be too large, it is good to know that Pegged is good at composing a parser from different sub-grammars [2]. So the difficulty is only in finding natural boundaries at which the grammar can be split, making it work should be easy. [1] https://github.com/PhilippeSigaud/Pegged/wiki/Grammars-as-D-Modules [2] https://github.com/PhilippeSigaud/Pegged/wiki/Grammar-Composition
Re: Release D 2.069.0
On Monday, 9 November 2015 at 02:15:17 UTC, Andrei Alexandrescu wrote: On 11/8/15 2:58 PM, rsw0x wrote: Interestingly, GDC seems *very* popular - it has a 4:1 install rate of gccgo and only trailing slightly behind the golang-go package(reference compiler?) on Ubuntu's popcon. Link? -- Andrei debian: https://qa.debian.org/popcon-graph.php?packages=gdc%2Cgccgo%2Cgolang&show_installed=on&want_legend=on&want_ticks=on&from_date=&to_date=&hlght_date=&date_fmt=%25Y-%25m&beenhere=1 ubuntu: http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gdc http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=golang-go http://ubuntu-popcon.43-1.org/cgi-bin/graph.pl?name=gccgo note that dmd is not redistributed on most linux distros due to licensing issues
Re: Release D 2.069.0
On 11/8/15 2:58 PM, rsw0x wrote: Interestingly, GDC seems *very* popular - it has a 4:1 install rate of gccgo and only trailing slightly behind the golang-go package(reference compiler?) on Ubuntu's popcon. Link? -- Andrei
Re: Release D 2.069.0
On 9/11/2015 10:25 AM, Jack Stouffer wrote: Is there any reason why this isn't currently used in the front end? Lack of testing, focus on matching c-dmd performance, it used to be blocked and nobody realized it wasn't any more etc.
Re: Release D 2.069.0
On Sunday, 8 November 2015 at 22:45:05 UTC, Daniel Murphy wrote: Actually I think it's fixed now, just disabled. It used to have problems with lib*/scan*, but those are in D now, and most of the allocations from the glue layer are being forwarded to the GC through rmem. If anyone wants to try it they just need to add -version=GC to the DMD build flags and insert this function in root/rmem.d's version(GC) block. extern (C) void* allocmemory(size_t m_size) { return GC.malloc(m_size); } Is there any reason why this isn't currently used in the front end?
Re: Release D 2.069.0
On 8/11/2015 1:41 AM, Dmitry Olshansky wrote: IMHO enabling D's GC in the frontend is better way to fix leaking in the CTFE, but there are some issues with that (it segfaults if we enable GC). Actually I think it's fixed now, just disabled. It used to have problems with lib*/scan*, but those are in D now, and most of the allocations from the glue layer are being forwarded to the GC through rmem. If anyone wants to try it they just need to add -version=GC to the DMD build flags and insert this function in root/rmem.d's version(GC) block. extern (C) void* allocmemory(size_t m_size) { return GC.malloc(m_size); }
Re: Release D 2.069.0
On Sunday, 8 November 2015 at 18:56:55 UTC, Andrei Alexandrescu wrote: On 11/03/2015 08:49 PM, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin This schedule seems to work well. Daily downloads on the rise - 28-days moving average almost 1400 as of today. Good work everyone and particularly thanks Martin for putting us on a schedule! http://erdani.com/d/downloads.daily.png Andrei This made me a bit interested on Linux package downloads, but the only sources seem to be self-reported so you can only compare it relatively. Interestingly, GDC seems *very* popular - it has a 4:1 install rate of gccgo and only trailing slightly behind the golang-go package(reference compiler?) on Ubuntu's popcon. Debian's shows nearly similar numbers. LDC is lagging severely behind on both - packaging issue?
Re: Release D 2.069.0
On 11/03/2015 08:49 PM, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin This schedule seems to work well. Daily downloads on the rise - 28-days moving average almost 1400 as of today. Good work everyone and particularly thanks Martin for putting us on a schedule! http://erdani.com/d/downloads.daily.png Andrei
Re: Release D 2.069.0
On Sunday, 8 November 2015 at 14:22:38 UTC, Dicebot wrote: On Sunday, 8 November 2015 at 14:14:23 UTC, Sebastiaan Koppe wrote: With a codebase like phobos, compiling in several steps isn't a bad solution. But I am building a parser using pegged, and splitting up the grammar into different modules feels like a no-no. It's an option though. Note that you can still used pegged in a stand-alone style with just saving generator output in a separate module and building it with project in a separate step. This means losing one of main advantages compared to using 3d party generators but if you hit the memory limit hard it may be the only option for now. You mean instead of mixin(grammer(`...`)) I write the output of grammer(`...`) to a file and include that into the final build? That might be a nice idea once I make a dub package out of it; to presupply the generated parser instead of eating up user's mem. Thanks.
Re: Release D 2.069.0
On Sunday, 8 November 2015 at 14:14:23 UTC, Sebastiaan Koppe wrote: With a codebase like phobos, compiling in several steps isn't a bad solution. But I am building a parser using pegged, and splitting up the grammar into different modules feels like a no-no. It's an option though. Note that you can still used pegged in a stand-alone style with just saving generator output in a separate module and building it with project in a separate step. This means losing one of main advantages compared to using 3d party generators but if you hit the memory limit hard it may be the only option for now.
Re: Release D 2.069.0
On Saturday, 7 November 2015 at 13:25:41 UTC, Jonathan M Davis wrote: What can we do when it eats up all 4 gigs? (Windows) With any program, if you're hitting the limit of the 32-bit address space (which is actually more like 3.6 GiB than 4), then you really only have two options - use less memory or go to 64-bit. In the case of dmd specifically, that means either reducing how much memory dmd consumes (which would mean improvements to the dmd codebase), have a 64-bit build of dmd (I have no idea what's involved with that, though it sounds like it's been done before), or you have to build your program in separate pieces that each require a low enough amount of memory when compiling that they don't run out of memory. Phobos has been built in pieces for quite a while now specifically because it requires too much memory to build it all at once (std.algorithm alone requires a lot of memory thanks to all of the template instantiations in its unit tests). - Jonathan M Davis With a codebase like phobos, compiling in several steps isn't a bad solution. But I am building a parser using pegged, and splitting up the grammar into different modules feels like a no-no. It's an option though. Right now I run compile with gdc in a virtual machine. Still eats about 7 gigs. The 64bit dmd would be nice. I waved the idea goodbye when I couldn't find a download link. Maybe need to look into it.
Re: Release D 2.069.0
On Saturday, November 07, 2015 17:41:20 Dmitry Olshansky via Digitalmars-d-announce wrote: > On 07-Nov-2015 16:25, Jonathan M Davis via Digitalmars-d-announce wrote: > > Phobos has been built in pieces for quite a while now > > specifically because it requires too much memory to build it all at once > > (std.algorithm alone requires a lot of memory thanks to all of the template > > instantiations in its unit tests). > > > > That's only true for unittests, it still builds the library in one go > (in about 7 seconds for me) on windows. Yes, but it's forced to do that with the unit test build, because it takes too much memory to compile them. Other programs may have the same problem (especially if they use templates and CTFE heavily). But dmd just does not do well with memory consumption when it comes to templates and CTFE, and it definitely will be a major improvement when we can reduce how much memory compiling them requires. - Jonathan M Davis
Re: Release D 2.069.0
On 07-Nov-2015 16:25, Jonathan M Davis via Digitalmars-d-announce wrote: On Thursday, November 05, 2015 02:38:01 Sebastiaan Koppe via Digitalmars-d-announce wrote: On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky wrote: If host machine is x64 bit windows try setting large address aware bit on the executable (there are tools to do that IRC), would allow it to eat up to ~4 gigs. What can we do when it eats up all 4 gigs? (Windows) Getting 64-bit packaged should be simplest thing possible. Ask around on D.learn maybe somebody could either show how to build it manually or at least have done so before. Otherwise - the single biggest problem with memory is CTFE leaking memory like crazy. Second to that is templates. IMHO enabling D's GC in the frontend is better way to fix leaking in the CTFE, but there are some issues with that (it segfaults if we enable GC). Lastly compiler's frontend could use some improvement in general and now that it's written in D and I totally expect better memory management to come soon. Phobos has been built in pieces for quite a while now specifically because it requires too much memory to build it all at once (std.algorithm alone requires a lot of memory thanks to all of the template instantiations in its unit tests). That's only true for unittests, it still builds the library in one go (in about 7 seconds for me) on windows. -- Dmitry Olshansky
Re: Release D 2.069.0
On Thursday, November 05, 2015 02:38:01 Sebastiaan Koppe via Digitalmars-d-announce wrote: > On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky > wrote: > > If host machine is x64 bit windows try setting large address > > aware bit on the executable (there are tools to do that IRC), > > would allow it to eat up to ~4 gigs. > > What can we do when it eats up all 4 gigs? (Windows) With any program, if you're hitting the limit of the 32-bit address space (which is actually more like 3.6 GiB than 4), then you really only have two options - use less memory or go to 64-bit. In the case of dmd specifically, that means either reducing how much memory dmd consumes (which would mean improvements to the dmd codebase), have a 64-bit build of dmd (I have no idea what's involved with that, though it sounds like it's been done before), or you have to build your program in separate pieces that each require a low enough amount of memory when compiling that they don't run out of memory. Phobos has been built in pieces for quite a while now specifically because it requires too much memory to build it all at once (std.algorithm alone requires a lot of memory thanks to all of the template instantiations in its unit tests). - Jonathan M Davis
Re: Release D 2.069.0
On Wednesday, 04 November, 2015 09:49 AM, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Great! This is fantastic! Thank you D community.
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky wrote: If host machine is x64 bit windows try setting large address aware bit on the executable (there are tools to do that IRC), would allow it to eat up to ~4 gigs. What can we do when it eats up all 4 gigs? (Windows)
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 17:52:23 UTC, Dmitry Olshansky wrote: If host machine is x64 bit windows try setting large address aware bit on the executable (there are tools to do that IRC), would allow it to eat up to ~4 gigs. We're already doing that since quite a while. https://github.com/D-Programming-Language/dmd/commit/172b55d22bd4a144d889c3fa8d9279d8e0a0ce1c
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. Thanks and congratulations to all involved! Just built and installed it. Now, what to try out first ... :-)
Re: Release D 2.069.0
V Wed, 04 Nov 2015 18:44:40 + Dicebot via Digitalmars-d-announce napsáno: > On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: > > Glad to announce D 2.069.0. > > > > http://dlang.org/download.html > > http://downloads.dlang.org/releases/2.x/2.069.0/ > > > > This is the first release with a self-hosted dmd compiler and > > comes with even more rangified phobos functions, > > std.experimental.allocator, and many other improvements. > > > > See the changelog for more details. > > http://dlang.org/changelog/2.069.0.html > > > > -Martin > > Arch Linux packages uploaded. Thanks :) Btw. any specific reason why dub is not in dlang group?
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Arch Linux packages uploaded.
Re: Release D 2.069.0
On 04.11.2015 17:19, Vladimir Panteleev wrote: On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: Are there any plans to release a dmd64.exe? I don't think we can even build one any more. Rainer/Martin? I have created a combination of a VC++ project and a Visual D project to build these. IIRC https://github.com/D-Programming-Language/dmd/pull/5039 is the only blocker, but I haven't tried recently.
Re: Release D 2.069.0
On 04-Nov-2015 18:25, Márcio Martins wrote: On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Seems like memory usage went up by a significant amount, as I can no longer compile our project on my Windows machine. DMD 2.068.2 uses up to 1100MB of memory during our build and succeeds DMD 2.069 used up to 1600MB of memory before crashing with "Error: out of memory" Are there any plans to release a dmd64.exe? If host machine is x64 bit windows try setting large address aware bit on the executable (there are tools to do that IRC), would allow it to eat up to ~4 gigs. -- Dmitry Olshansky
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 15:25:04 UTC, Márcio Martins wrote: Are there any plans to release a dmd64.exe? I don't think we can even build one any more. Rainer/Martin?
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Seems like memory usage went up by a significant amount, as I can no longer compile our project on my Windows machine. DMD 2.068.2 uses up to 1100MB of memory during our build and succeeds DMD 2.069 used up to 1600MB of memory before crashing with "Error: out of memory" Are there any plans to release a dmd64.exe?
Re: Release D 2.069.0
On 2015-11-04 11:07, Walter Bright wrote: There's much discussion on that feature on reddit. https://www.reddit.com/r/programming/comments/3rg17h/d_2069_has_been_released_basic_support_for/ Cool :) -- /Jacob Carlborg
Re: Release D 2.069.0
On 11/04/2015 11:58 AM, Martin Nowak wrote: > Did anything go wrong with the uninstall? Let continue here https://issues.dlang.org/show_bug.cgi?id=15284
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ Same question I did some time ago: is those binaries compiled with 2.068 or 2.069 itself? The second choice should be the right one. Andrea
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Great stuff! Thanks. In my (very) limited trial run - I don't notice much of a performance difference. Is there any numbers to compare 2069 with 2068 (and maybe even older)?
Re: Release D 2.069.0
On 11/04/2015 10:01 AM, Suliman wrote: >> Regards, >> -- > > Same problem. It's likely related to this fix which now let's the installer wait on the uninstaller to finish. https://github.com/D-Programming-Language/installer/commit/526f35495cdc615b26b65d73fa7b4aa0477b1d12 Did anything go wrong with the uninstall?
Re: Release D 2.069.0
On 11/04/2015 10:01 AM, deadalnix wrote: > > Bonus question: how soon can we expect travis to pick up the new version ? I updated http://ftp.digitalmars.com/LATEST now and added that step to http://wiki.dlang.org/DMD_Release_Building.
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. ... -Martin Congratulations!!!
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 08:29:22 UTC, Mike James wrote: There seems to be an install problem with the .exe version for Windows. The installer removes the old DMD then doesn't install the 2.069.0 version. In the task manager it's still running at 50% CPU time. It fails on Windows Vista and Windows 7. I don't have this problem - installed without any problems. (Windows 7 x64)
Re: Release D 2.069.0
On 11/4/2015 1:38 AM, Andrei Alexandrescu wrote: On 11/4/15 2:49 AM, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html Fantastic, thanks all! More media: https://www.facebook.com/dlang.org/posts/1164146430265703 https://twitter.com/D_Programming/status/661839363677036544 It's also on hacker news. https://news.ycombinator.com/newest
Re: Release D 2.069.0
On 11/3/2015 11:12 PM, Jacob Carlborg wrote: On 2015-11-04 02:49, Martin Nowak wrote: Glad to announce D 2.069.0. A bit of self promotion: this is the first release with basic support for Objective-C [1]. Many thanks to Michel Fortin that did the original implementation. [1] http://dlang.org/changelog/2.069.0.html#objective-c-support There's much discussion on that feature on reddit. https://www.reddit.com/r/programming/comments/3rg17h/d_2069_has_been_released_basic_support_for/
Re: Release D 2.069.0
On 11/4/15 2:49 AM, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html Fantastic, thanks all! More media: https://www.facebook.com/dlang.org/posts/1164146430265703 https://twitter.com/D_Programming/status/661839363677036544 Andrei
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Bonus question: how soon can we expect travis to pick up the new version ?
Re: Release D 2.069.0
There seems to be an install problem with the .exe version for Windows. The installer removes the old DMD then doesn't install the 2.069.0 version. In the task manager it's still running at 50% CPU time. It fails on Windows Vista and Windows 7. Regards, -- Same problem.
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Hi. There seems to be an install problem with the .exe version for Windows. The installer removes the old DMD then doesn't install the 2.069.0 version. In the task manager it's still running at 50% CPU time. It fails on Windows Vista and Windows 7. Regards, --
Re: Release D 2.069.0
On 2015-11-04 02:49, Martin Nowak wrote: Glad to announce D 2.069.0. A bit of self promotion: this is the first release with basic support for Objective-C [1]. Many thanks to Michel Fortin that did the original implementation. [1] http://dlang.org/changelog/2.069.0.html#objective-c-support -- /Jacob Carlborg
Re: Release D 2.069.0
On 11/3/2015 5:49 PM, Martin Nowak wrote: Glad to announce D 2.069.0. Thanks to everyone involved with this - and special mention for Daniel Murphy who did the remarkable job of translating the C++ code to D .
Re: Release D 2.069.0
On 11/3/2015 5:49 PM, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Thank you, Martin, for the hard work you did to prepare and shepherd DMD through the release process!
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Yeahh !
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Thx.
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin https://www.reddit.com/r/programming/comments/3rg17h/d_2069_has_been_released_basic_support_for/
Re: Release D 2.069.0
On Wednesday, 4 November 2015 at 01:50:38 UTC, Martin Nowak wrote: Glad to announce D 2.069.0. http://dlang.org/download.html http://downloads.dlang.org/releases/2.x/2.069.0/ This is the first release with a self-hosted dmd compiler and comes with even more rangified phobos functions, std.experimental.allocator, and many other improvements. See the changelog for more details. http://dlang.org/changelog/2.069.0.html -Martin Whoo, ddmd is out! Congrats to Daniel and everyone else involved.