malyzajko / daisy

Other
42 stars 10 forks source link

Use of online Mixed precision #12

Closed hiahiawei closed 1 year ago

hiahiawei commented 2 years ago

I want to perform a precision mix of float16 and float64,What parameters should I fill in the text box image

malyzajko commented 2 years ago

Hi!

Unfortunately, the online interface has a bug and does not parse float16 correctly. I have fixed the bug in the most recent version on Github, but I don't have an easy way to update the online interface right now.

If you can use the standalone version of Daisy, you can specify the precisions of individual variables in a file (e.g. called doppler_precision.txt) like so :

doppler = {
  u: Double
  v: Double
  T: Float16
  t1: Float
}

and then call Daisy, e.g. from inside sbt:

run testcases/rosa/Doppler.scala --mixed-precision=doppler_precision.txt

If you leave out any of the declared variables in the precision specification, the default precision will be used (specified either with the --precision flag, or otherwise Float64).

hiahiawei commented 2 years ago

ok,thank you.

hiahiawei commented 2 years ago

Hi!

Unfortunately, the online interface has a bug and does not parse float16 correctly. I have fixed the bug in the most recent version on Github, but I don't have an easy way to update the online interface right now.

If you can use the standalone version of Daisy, you can specify the precisions of individual variables in a file (e.g. called doppler_precision.txt) like so :

doppler = {
  u: Double
  v: Double
  T: Float16
  t1: Float
}

and then call Daisy, e.g. from inside sbt:

run testcases/rosa/Doppler.scala --mixed-precision=doppler_precision.txt

If you leave out any of the declared variables in the precision specification, the default precision will be used (specified either with the --precision flag, or otherwise Float64).

Hello,Whether Daisy supports providing multiple optional precision for a variable. For example, setting variables u, V, t, T1 can use three precision types: float16, float, and double. Daisy gives the variable precision selection that meets the precision requirements after performing precision tuning.

malyzajko commented 2 years ago

I am not exactly sure what the question is, but Daisy's automated mixed-precision tuning (using the --mixed-tuning flag) does not accept any candidate precisions for individual variables. That is, it will always consider all floating-point precisions for all variables.