Hi,
1)
Juno is supported by a couple of software stacks, which are available via Linaro:
http://releases.linaro.org/latest/members/arm/openembedded/juno-lsk
http://releases.linaro.org/latest/members/arm/android/images/armv8-android-juno-lsk
These include big.LITTLE MP support - so (in brief) that's heterogeneous scheduling amongst both the A57 & A53 CPUs. There's no direct support for the older cluster switching model.
A DVFS framework is supported
2)
Yes the Linaro kernel supports perf and you should be able to access PMU counts on Juno
3)
There are plans to provide OpenCL support fro the GPU as part of the Android software stack - but quoting from the ASOP filesytem comments in the link above: "OpenCL support is not present at this time and will be enabled in a future release"
Hope that helps with some of your questions.
MarkN.