kmn-programming 0.9.1 → 0.9.2
raw patch · 2 files changed
+14/−3 lines, 2 files
Files
- Main.hs +7/−1
- kmn-programming.cabal +7/−2
Main.hs view
@@ -7,6 +7,7 @@ import Data.Monoid import Data.Maybe import Data.Time.Clock+import Data.IORef import Control.Arrow import Control.Monad import Control.Concurrent@@ -126,6 +127,7 @@ :: Bool -> Bool -> Maybe Method -> Bool -> Bool -> Bool -> Int -> Maybe FilePath -> Maybe FilePath -> Maybe Int -> Int -> Int -> Int -> Maybe FilePath -> Either FilePath [[String]] -> Maybe Int -> Partial -> IO () compute del transp met mult printmat silent guess levelin levelout level_ tra uroll ali out fname timeout (Partial tasks splitPower) = do+ maxV <- newIORef guess gen <- newStdGen s <- either (fmap (filter (not . null) . map words . lines) . readFile) return fname @@ -185,7 +187,11 @@ when (not silent && printmat && i == head tasks') $ output $ showMat mat' - (res, levs') <- umes_ guess (not silent) ali ali tra uroll level levs mat'+ g <- readIORef maxV++ (res, levs') <- umes_ g (not silent) ali ali tra uroll level levs mat'++ atomicModifyIORef' maxV \g -> (max g $ fromIntegral res, ()) case levelout of Just f | i == head tasks' -> writeFile f $ unlines $ map show levs'
kmn-programming.cabal view
@@ -1,7 +1,8 @@ name: kmn-programming-version: 0.9.1+version: 0.9.2 synopsis: K_M,N quadratic programming--- description: +homepage: https://github.com/divipp/kmn-programming+description: Integer K_m,n quadratic programming problem solving with x86-64 SIMD instructions. See README.md for details. license: BSD3 license-file: LICENSE author: Péter Diviánszky@@ -12,6 +13,10 @@ extra-source-files: ChangeLog.md SplitProblem.hs cabal-version: >=1.10++source-repository head+ type: git+ location: https://github.com/divipp/kmn-programming executable kmn-programming main-is: Main.hs