Commit Graph

2093 Commits

Author SHA1 Message Date
Liu Ming
25acd89325 rename the last files. 2016-03-17 08:42:46 +08:00
Liu Ming
1fe83c9a78 rename ParseMode as ParseContext in python folder. 2016-03-17 08:34:48 +08:00
Liu Ming
6e542cb083 rename ParseMode as ParseContext in Units folder. 2016-03-17 08:29:32 +08:00
Liu Ming
88d489e876 rename ParseMode as ParseContext in IntegrationTests folder. 2016-03-17 08:28:17 +08:00
Liu Ming
a4a449538d rename ParseMode as ParseContext in EclipseState folder. 2016-03-16 17:15:09 +08:00
Liu Ming
12268c7937 rename ParseMode as ParseContext in Deck folder. 2016-03-16 16:36:34 +08:00
Liu Ming
705a9dc168 rename ParseMode as ParseContex in Parser folder. 2016-03-16 16:34:58 +08:00
Liu Ming
88c89b707d rename ParseMode class as ParseContext. 2016-03-16 16:24:59 +08:00
Joakim Hove
53471d2329 PLYVISC: INCREASING instead of STRIVLY_INCREASING. 2016-03-15 14:11:42 +01:00
Atgeirr Flø Rasmussen
78e0870bad Use std::list instead of std::vector to fix push_front().
The push_front() method can cause reallocation of expanded_items,
thereby invalidating iterators already stored in m_recordItems.
Switching to std::list fixes this.
2016-03-14 14:54:29 +01:00
Atgeirr Flø Rasmussen
32439fa87d Remove unused boost-specific helpers. 2016-03-14 14:54:00 +01:00
Atgeirr Flø Rasmussen
2e1940e5c3 Move string_view ops to Opm namespace. 2016-03-14 13:28:51 +01:00
Atgeirr Flø Rasmussen
f23af386cf Add missing include, remove unused function. 2016-03-14 13:22:22 +01:00
Joakim Hove
97aaa97d90 Merge pull request #706 from jokva/parser-performance-improvements
Parser performance improvements
2016-03-14 12:35:19 +01:00
Joakim Hove
2b79d2e57a Merge pull request #711 from qilicun/eclipse-PRTLog
Add EclipsePRTLog backend.
2016-03-14 12:23:03 +01:00
Liu Ming
3bea6360b9 using base class's constructors. 2016-03-14 17:09:10 +08:00
Liu Ming
5e0eebcbea add missing bracket. 2016-03-14 16:57:19 +08:00
Liu Ming
70bc978074 delete unused function. 2016-03-14 16:40:26 +08:00
Liu Ming
a28a1e3c3d remove temporary variables. 2016-03-14 16:39:18 +08:00
Jørgen Kvalsvik
cee22efd99 Pass readValueToken string_view 2016-03-14 08:55:02 +01:00
Jørgen Kvalsvik
1406630aa3 DeckItem constructor takes size hint
Enable preallocation by passing size hints to DeckItem constructor.
2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
84e245bdb5 DeckRecord preallocation support.
The translation between ParserRecord knows in advance how many DeckItem
entries there are in the resulting DeckRecord. We can use this
information to efficiently preallocate memory in the DeckRecord.
2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
55b46da658 Moved RawRecord::isTerminator out of interface
This feature is internal to the raw records and is removed from its
public interface.
2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
7440acaa6a Replaces boost::trim_right with faster version
boost::trim_right loses a lot of performance from being locale aware.
Since this is not a problem for our ASCII fortran-type files, ignore
this issue and use isspace for trimming.
2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
650037afb2 Inlined title keyword handling 2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
2a650d5972 RawRecord refactoring
Some simple refactoring to remove a redundant check and clean up some
initialisation routines.
2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
dc094cbb16 More efficient findTerminatingSlash
Uses some heuristics and quick exists to avoid always paying worst case
cost for finding terminating slash.
2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
28eb195ac3 readValueToken< double > split into fast/slow path.
readValueToken spent almost half its time dealing with weirdly formed or
broken floats. Now has a shorter path that can early return a
successfully parsed float and only do slow handling of cases that need
it (notably zero, fortran style exponent and errors).
2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
38f88b4e14 RawKeyword::isTerminator uses is_separator 2016-03-14 08:29:54 +01:00
Jørgen Kvalsvik
1d1715b421 RawConsts::is_separator function
This replaces the inefficient RawConsts::separators.find( char ) with an
availble, efficient and inlinable is_separator.
2016-03-14 08:29:53 +01:00
Jørgen Kvalsvik
717d495a98 Replace boost::to_upper_copy
This function was rather slow and accounted for too much execution time.
Replaced with a simple implementation relying on toupper. Locale
awareness, the benefit of to_upper_copy, is not an issue since it's all
ASCII.
2016-03-14 08:29:53 +01:00
Jørgen Kvalsvik
9a96f9fd8f Enable rvalue push_back in ParserItemScan
Instead of going via an immediately discarded temporary, feed the
readValueToken result value directly to push_back. This enables rvalue
optimisations to kick in, when available.
2016-03-14 08:29:53 +01:00
Jørgen Kvalsvik
93b7c0739b Replace boost::lexical_cast<> with std functions
The boost provided lexical cast are inefficient and is shown to be a
slowdown in the inner loop. Replaces them with std::atoi/std::atof and
some simple correctness checking.
2016-03-14 08:29:53 +01:00
Jørgen Kvalsvik
e4ddf884f1 Using operator+ and stream operators 2016-03-14 08:29:53 +01:00
Jørgen Kvalsvik
798084676a RawRecord uses string_view internally
Modifies RawRecord to internally use string_view instead of copies of
the substrings. This *vastly* reduces copying in the processing of each
record and subsequently improves performance. Reduces total memory usage
in Deck construction.
2016-03-14 08:29:53 +01:00
Jørgen Kvalsvik
8d4863ff86 Introducing string_view
A simple non-mutating view into a string. Implements a shallow reference
to a std::string, replicating its operations to be drop-in replaceable.

Primarily designed for inner loop use, where expensive string
allocations become a performance killer.
2016-03-14 08:29:53 +01:00
Joakim Hove
8cfafe7c52 Merge pull request #701 from qilicun/more-function-opmlog
More function opmlog
2016-03-14 07:34:44 +01:00
Liu Ming
e0cbb05cfe output numbers as string. 2016-03-14 12:53:20 +08:00
Liu Ming
289f6c3bdb Add EclipsePRTLog backend. 2016-03-14 11:09:17 +08:00
Joakim Hove
0979d8050e Load-test of opm-data/solvent_test_suite/SPE5CASE1 2016-03-12 19:18:55 +01:00
Liu Ming
ccd14fd433 remove StreamLog include file. 2016-03-12 21:04:45 +08:00
Liu Ming
2bd48b4d9d remove StreamLog from header. 2016-03-11 15:47:27 +08:00
Liu Ming
bea353aafd Add debug method. 2016-03-11 15:24:43 +08:00
Liu Ming
6506cb5dc1 remove StreamLog and int members. 2016-03-11 15:21:47 +08:00
Joakim Hove
7f6fa4b125 Merge pull request #707 from totto82/tlpmixpa
Add new keyword TLPMIXPA
2016-03-09 10:13:23 +00:00
Joakim Hove
b9aec3e3be Merge pull request #705 from jokva/remove-boost-from-startoken
Moves readValueToken implementation to source file
2016-03-08 17:37:31 +01:00
Tor Harald Sandve
3991bf6e51 Add new keyword TLPMIXPA
The TLPMIXPA keyword can be used for giving pressure depended Todd-
Longstaff parameters. The implementation follows the description of
PMISC.
2016-03-08 15:14:21 +01:00
Jørgen Kvalsvik
d67a44b19d Include guards for Functional 2016-03-07 09:03:52 +01:00
Jørgen Kvalsvik
d0d4a74d31 Moves readValueToken implementation to source file
The templated readValueToken has been moved to source file, and uses
explicit instantiation and linking. The deprecated float specialisation
has been removed.
2016-03-04 18:27:44 +01:00
Joakim Hove
99266809b7 Merge pull request #698 from jokva/equil-keyword-lookup
Equil keyword lookup
2016-03-04 18:19:43 +01:00