
Hi devs, There's a sizable number of modules in the `vectorise` subdirectory of GHC. I'm sure these do all sorts of wonderful things. But what, exactly? And, does anyone make use of these wonderful things? A quick poking through the code shows a tiny link between the vectorise code and the rest of GHC -- the function `vectorise` exported from the module `Vectorise`, which is named in exactly one place from SimplCore. From what I can tell, the function will be called only when `-fvectorise` is specified, and then it seems to interact with a {-# VECTORISE #-} pragma. However, `{-# VECTORISE #-}` doesn't appear in the manual at all, and `-fvectorise` is given only a cursory explanation. It seems these work with DPH... which has been disabled, no? Searching online finds several hits, but nothing more recent than 2012. I hope this question doesn't offend -- it seems that vectorisation probably has amazing performance gains. Yet, the feature also seems unloved. In the meantime, compiling (and recompiling, and recompiling...) the modules takes time, as does going through them to propagate changes from elsewhere. If this feature is truly orphaned, unloved, and unused at the moment, is it reasonable to consider putting it on furlough? Thanks, Richard

I share Richard's opinion. Janek Dnia wtorek, 13 stycznia 2015, Richard Eisenberg napisał:
Hi devs,
There's a sizable number of modules in the `vectorise` subdirectory of GHC. I'm sure these do all sorts of wonderful things. But what, exactly? And, does anyone make use of these wonderful things?
A quick poking through the code shows a tiny link between the vectorise code and the rest of GHC -- the function `vectorise` exported from the module `Vectorise`, which is named in exactly one place from SimplCore. From what I can tell, the function will be called only when `-fvectorise` is specified, and then it seems to interact with a {-# VECTORISE #-} pragma. However, `{-# VECTORISE #-}` doesn't appear in the manual at all, and `-fvectorise` is given only a cursory explanation. It seems these work with DPH... which has been disabled, no? Searching online finds several hits, but nothing more recent than 2012.
I hope this question doesn't offend -- it seems that vectorisation probably has amazing performance gains. Yet, the feature also seems unloved. In the meantime, compiling (and recompiling, and recompiling...) the modules takes time, as does going through them to propagate changes from elsewhere. If this feature is truly orphaned, unloved, and unused at the moment, is it reasonable to consider putting it on furlough?
Thanks, Richard _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://www.haskell.org/mailman/listinfo/ghc-devs

[Sorry, sent from the wrong account at first.] We currently don’t have the resources to work on DPH. I would obviously prefer to leave the code in, in the hope that we will be able to return to it. Manuel
Richard Eisenberg
: Hi devs,
There's a sizable number of modules in the `vectorise` subdirectory of GHC. I'm sure these do all sorts of wonderful things. But what, exactly? And, does anyone make use of these wonderful things?
A quick poking through the code shows a tiny link between the vectorise code and the rest of GHC -- the function `vectorise` exported from the module `Vectorise`, which is named in exactly one place from SimplCore. From what I can tell, the function will be called only when `-fvectorise` is specified, and then it seems to interact with a {-# VECTORISE #-} pragma. However, `{-# VECTORISE #-}` doesn't appear in the manual at all, and `-fvectorise` is given only a cursory explanation. It seems these work with DPH... which has been disabled, no? Searching online finds several hits, but nothing more recent than 2012.
I hope this question doesn't offend -- it seems that vectorisation probably has amazing performance gains. Yet, the feature also seems unloved. In the meantime, compiling (and recompiling, and recompiling...) the modules takes time, as does going through them to propagate changes from elsewhere. If this feature is truly orphaned, unloved, and unused at the moment, is it reasonable to consider putting it on furlough?
Thanks, Richard _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://www.haskell.org/mailman/listinfo/ghc-devs

On Fri, Jan 16, 2015 at 3:58 AM, Manuel M T Chakravarty wrote:
[Sorry, sent from the wrong account at first.]
We currently don't have the resources to work on DPH. I would obviously prefer to leave the code in, in the hope that we will be able to return to it.
What's the plan for DPH and 7.10? Is it bitrotting or abandoned, and does this mean there weren't enough users of it to notice and help maintain it?

| What's the plan for DPH and 7.10? Is it bitrotting or abandoned, and | does this mean there weren't enough users of it to notice and help | maintain it? For 7.10, DPH is definitely not supported, I'm afraid. For a longer term vision I defer to Manuel! Simon

Out of curiosity I removed vectorisation code and did a devel2 build. Build time on my laptop went down from 25 minutes to 24 minutes - a modest 4% improvement. Of course there is more to be gained by avoiding recompilations later during development.
I would obviously prefer to leave the code in, in the hope that we will be able to return to it. Is this just hope or are there any actual plans to attempt to return to DPH? (I assume this has to do with funding.)
Janek Dnia piątek, 16 stycznia 2015, Simon Peyton Jones napisał:
| What's the plan for DPH and 7.10? Is it bitrotting or abandoned, and | does this mean there weren't enough users of it to notice and help | maintain it?
For 7.10, DPH is definitely not supported, I'm afraid.
For a longer term vision I defer to Manuel!
Simon _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://www.haskell.org/mailman/listinfo/ghc-devs
participants (5)
-
Jan Stolarek
-
Manuel M T Chakravarty
-
Richard Eisenberg
-
Simon Peyton Jones
-
Tuncer Ayaz