def get_compute_device_usage_for_mlprogram_operation(
        self,
        operation: MLModelStructureProgramOperation,
    ) -> _Optional[MLComputePlanDeviceUsage]:
        """
        Returns the estimated cost of executing an ML Program operation.

        Parameters
        ----------
        operation : MLModelStructureProgramOperation
            An ML Program operation.

        Returns
        -------
        Optional[MLComputePlanDeviceUsage]
            The anticipated compute devices that would be used for executing the operation or ``None`` if the usage couldn't be determined.
        """
        return self.__proxy__.get_compute_device_usage_for_mlprogram_operation(operation)

        Returns the estimated cost of executing an ML Program operation.

        Parameters
        ----------
        operation : MLModelStructureProgramOperation
            An ML Program operation.

        Returns
        -------
        Optional[MLComputePlanDeviceUsage]
            The anticipated compute devices that would be used for executing the operation or ``None`` if the usage couldn't be determined.
        
coremltools/models/compute_plan.py