[Oisf-devel] Last checking faster on Tilera...
Victor Julien
victor at inliniac.net
Sat Mar 10 09:29:12 UTC 2012
On 03/10/2012 02:14 AM, Tom DeCanio wrote:
> commit 0150e66ede787dd0b164d5d4a3195f
> 69dabc7b23
> Author: Victor Julien <victor at inliniac.net <mailto:victor at inliniac.net>>
> Date: Fri Mar 9 18:31:46 2012 +0100
>
> flow engine: improve scalability
>
> Major redesign of the flow engine. Remove the flow queues that turned
> out to be major choke points when using many threads. Flow manager now
> walks the hash table directly. Simplify the way we get a new flow in
> case of emergency.
>
> Victor;
>
> I assume this is the cause of a speed up on Tilera. One minor thing.
Thats what it was designed to do :)
> Would you mind making one minor change. It appears that Tilera can't do
> atomic mask operations on an unsigned character, so I had to do the
> following. If you change it everywhere it avoids another #ifdef for Tilera.
Sure, can you submit a patch for that?
Btw, do you see any issues with atomic operations on a ptr? Earlier
versions of the gcc atomic intrinsics accepted only certain ints, but
now it accepts void * too.
Cheers,
Victor
> --- a/src/flow-manager.c
> +++ b/src/flow-manager.c
> @@ -63,7 +63,11 @@
> /* Run mode selected at suricata.c */
> extern int run_mode;
>
> +#ifdef __tile__
> +SC_ATOMIC_EXTERN(unsigned int, flow_flags);
> +#else
> SC_ATOMIC_EXTERN(unsigned char, flow_flags);
> +#endif
>
> /* 1 seconds */
> #define FLOW_NORMAL_MODE_UPDATE_DELAY_SEC 1
>
--
---------------------------------------------
Victor Julien
http://www.inliniac.net/
PGP: http://www.inliniac.net/victorjulien.asc
---------------------------------------------
More information about the Oisf-devel
mailing list