/* * Please do not edit this file. * It was generated using PAB's VML system. */ #include CPS_START_NAMESPACE bool_t vml_CudaPrecision (VML *vmls, char *name,CudaPrecision *objp) { if (!vml_enum (vmls,name,(enum_t *)objp,CudaPrecision_map)) return FALSE; return TRUE; } struct vml_enum_map CudaPrecision_map[] = { {"CudaPrecision","CUDA_HALF_PRECISION",CUDA_HALF_PRECISION}, {"CudaPrecision","CUDA_SINGLE_PRECISION",CUDA_SINGLE_PRECISION}, {"CudaPrecision","CUDA_DOUBLE_PRECISION",CUDA_DOUBLE_PRECISION}, {NULL,NULL,0} }; bool_t vml_CudaReconstructType (VML *vmls, char *name,CudaReconstructType *objp) { if (!vml_enum (vmls,name,(enum_t *)objp,CudaReconstructType_map)) return FALSE; return TRUE; } struct vml_enum_map CudaReconstructType_map[] = { {"CudaReconstructType","CUDA_RECONSTRUCT_NO",CUDA_RECONSTRUCT_NO}, {"CudaReconstructType","CUDA_RECONSTRUCT_8",CUDA_RECONSTRUCT_8}, {"CudaReconstructType","CUDA_RECONSTRUCT_12",CUDA_RECONSTRUCT_12}, {NULL,NULL,0} }; bool QudaArg::Encode(char *filename,char *instance){ VML vmls; if ( !vmls.Create(filename,VML_ENCODE)) return false; if ( !Vml(&vmls,instance) ) return false; vmls.Destroy(); return true; } bool QudaArg::Decode(char *filename,char *instance){ VML vmls; if ( !vmls.Create(filename,VML_DECODE)) return false; if ( !Vml(&vmls,instance)) return false; vmls.Destroy(); return true; } bool QudaArg::Vml(VML *vmls,char *instance){ if(!vml_QudaArg(vmls,instance,this)) return false; return true; } bool_t vml_QudaArg (VML *vmls, char *name,QudaArg *objp) { vml_class_begin(vmls,"QudaArg",name); if (!vml_CudaPrecision (vmls, "gauge_prec", &objp->gauge_prec)) return FALSE; if (!vml_CudaPrecision (vmls, "spinor_prec", &objp->spinor_prec)) return FALSE; if (!vml_CudaReconstructType (vmls, "reconstruct", &objp->reconstruct)) return FALSE; if (!vml_CudaPrecision (vmls, "gauge_prec_sloppy", &objp->gauge_prec_sloppy)) return FALSE; if (!vml_CudaPrecision (vmls, "spinor_prec_sloppy", &objp->spinor_prec_sloppy)) return FALSE; if (!vml_CudaReconstructType (vmls, "reconstruct_sloppy", &objp->reconstruct_sloppy)) return FALSE; if (!vml_Float (vmls, "reliable_delta", &objp->reliable_delta)) return FALSE; if (!vml_int (vmls, "max_restart", &objp->max_restart)) return FALSE; if (!vml_int (vmls, "device", &objp->device)) return FALSE; if (!vml_int (vmls, "maxiter_precondition", &objp->maxiter_precondition)) return FALSE; if (!vml_int (vmls, "Ls_cheap", &objp->Ls_cheap)) return FALSE; if (!vml_bool (vmls, "perform_mspcg_madwf_ml_training", &objp->perform_mspcg_madwf_ml_training)) return FALSE; if (!vml_bool (vmls, "use_mspcg_madwf_ml_training", &objp->use_mspcg_madwf_ml_training)) return FALSE; if (!vml_Float (vmls, "mu", &objp->mu)) return FALSE; vml_class_end(vmls,"QudaArg",name); return TRUE; } CPS_END_NAMESPACE